07 2017 档案
摘要:一、模块定义: Python的logging模块提供了通用的日志系统,可以方便第三方模块或者是应用使用。这个模块提供不同的日志级别,并可以采用不同的方式记录日志,比如文件,HTTP GET/POST,SMTP,Socket等,甚至可以自己实现具体的日志记录方式。 二、模块实现方式: logging模
阅读全文
摘要:calendar(日历)模块,默认每周第一天是星期一,最后一天是星期天。 函数及描述 1. calendar.calendar(year, w=2, l=1, c=6, m=3) 返回一个多行字符串格式的year年年历。 2. calendar.firstweekday() 返回当前每周起始日期的设
阅读全文
摘要:一、什么是模块 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀。 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译为共享库或DLL的C或C++扩展 3 包好一组模块的包 4 使用C编写并链接
阅读全文
摘要:在学习python的过程中,lambda的语法时常会使人感到困惑,lambda是什么,为什么要使用lambda,是不是必须使用lambda? 下面就上面的问题进行一下解答。 1、lambda是什么? 看个例子: 看一下执行的结果: g(1) >>>2 g(2) >>>3 当然,你也可以这样使用: l
阅读全文
摘要:一、解释 二分法:可以理解为折半查找法,每一次都是基于上一次的折半查找 二、实例
阅读全文
摘要:一、解释 递归:在调用一个函数的过程中,直接或间接地调用了函数本身这个就叫递归 注:Python在递归中没有像别的语言对递归进行优化,所以他的每一次调用都会基于上一次的调用进行,并且他设置了最大的递归数量防止递归外溢 二、实例 三、递归的回溯与递推 递推:像上边递归实现所拆解,递归每一次都是基于上一
阅读全文
摘要:一、解释 面向过程:核心是过程二字,过程即解决问题的步骤,基于面向过程去设计程序就像是在设计,流水线式的编程思想,在设计程序时,需要把整个流程设计出来, 一条工业流水线,是一种机械式的思维方式 二、优缺点 优点:程序体系结构清晰,可以把复杂的问题简单化,流程化 缺点:可扩展性差,一条流线只是用来解决
阅读全文
摘要:1.1 协程函数理解 协程函数就是使用了yield表达式形式的生成器 def eater(name): print("%s eat food" %name) while True: food = yield print("done") g = eater("gangdan") print(g) 结果
阅读全文
摘要:Requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。Requests 的哲学是以 PEP 20 的习语为中心开发的,所以它比 urllib
阅读全文
摘要:简化if语句的形式 定义方式: 判断为真的值 if 条件 else 其它情况 例:
阅读全文
摘要:定义:快速形成列表的方式 例: l=['egg%s' %i for i in range(10) if i >=5]print(l) #获得3以后的列表中的值的平方列表 nums=[1,2,3,4,5,6]nums_new=[item**2 for item in nums if item > 3]
阅读全文
摘要:一、定义 可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他的数据类型需要调用自己内置的__iter__方法),所以生成器就是可迭代对象 二、生成器的两种形式(Python有两种不同的方式提供生成器) 1.生成器函数:常规函数定义,但是,使用yield语句而不是return语句返回结果。
阅读全文
摘要:一、迭代器协议定义: 迭代:是一个重复的过程,每一次重复,都是基于上一次的结果而来 迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代 (只能往后走不能往前退) 二、可迭代对象定义: 实现了迭代器协议的对象(如何实
阅读全文
摘要:一、定义 器即函数 装饰即修饰,意指为其他函数添加新功能 装饰器本身可以是任意可调用对象,被装饰的对象本身也可以是任意可调用对象 实现装饰器: 装饰器=高阶函数+函数嵌套+闭包 二、原则: 1 、开放封闭原则:对扩展是开放的,对修改是封闭 2.1 装饰器的遵循的原则:1 不修改被装饰对象的源代码 2
阅读全文
摘要:一、定义: 1. 定义在函数内部的函数 2. 包含对外部作用域名字的引用,而不是对全局作用域名字的引用那么该内部函数就称为闭包函数 二、闭包函数的应用:惰性计算
阅读全文
摘要:名称空间:存放名字的地方,准确的说名称空间是存放名字与变量值绑定关系的地方 一、名称空间又分为: 内置名称空间:在python解释器启动时产生,存放一些python内置的名字 全局名称空间:在执行文件时产生,存放文件级别定义的名字 局部名称空间:在执行文件的过程中,如果调用了函数,则会产生该函数的局
阅读全文
摘要:1、函数可以被当做数据传递 2、可以当做参数传入 3、可以当做函数的返回 4、可以当做容器类型的元素
阅读全文
摘要:形参:在定义函数时,括号内的参数成为形参特点:形参就是变量名def foo(x,y): #x=1,y=2 print(x) print(y) 实参:在调用函数时,括号内的参数成为实参特点:实参就是变量值foo(1,2) 在调用阶段实参(变量值)才会绑定形参(变量名)调用结束后,解除绑定 一、、函数形
阅读全文
摘要:返回值注意:return的返回值没有类型限制 1. 没有return:返回None,等同于return None 2. return 一个值:返回该值 3. return val1,val2,val3:返回(val1,val2,val3)
阅读全文
摘要:def 函数名(arg1,arg2,arg3): "注释" 函数体 return 返回值 函数名一般是动词参数、、、return:函数内部可以有多个return,但只能执行一次,函数就结束调用, 并且会把return后的值作为函数执行的结果返回
阅读全文
摘要:无参:应用场景仅仅只是执行一些操作,比如与用户交互,打印有参:需要根据外部传进来的参数,才能执行相应的逻辑,比如统计长度,求最大值最小值空函数:设计代码结构 def main(): while True: sql=input('>>: ').strip() if not sql:continue c
阅读全文
摘要:Python函数如果要调用必先定义 在定义阶段,Python只检查函数的语法是否正确不进行调用 函数的定义与变量的定义类似,没有事先定义变量,而直接引用变量,会报错没有事先定义函数,而直接调用,就相当于在引用一个不存在的变量名 在调用阶段才会执行函数,示例如下:
阅读全文
摘要:因为如果不使用函数的话代码会出现: 1、复杂度增大 2、组织结构不够清晰 3、可读性差 4、代码冗余 5、可扩展性差
阅读全文
摘要:二进制读写不需要指定编码,因为本身就是二进制的 其中分为: rb 或 r+b wb 或 w+b xb 或 w+b ab 或 a+b 示例: f=open('a.txt','wb')#文件写f.write('11111\n')f.write('2222\n')#关闭f.close()
阅读全文
摘要:f = open("a.txt",'r",encoding="utf-8") f.tell()当前光标在什么位置 f.read()读取文件,但是可以按字节和字符读 1、当模式为字节模式f.read(3)为读取3个字节 2、当模式为字节模式f.read(3)为读取3个符 f.seek()把光标移到那个
阅读全文
摘要:a, 追加模式【可读; 不存在则创建;存在则只追加内容】 #文件写模式f=open('a.txt','a',encoding='utf-8')#文件写f.write('11111\n')f.write('2222\n')f.write('3333\n4444\n')#文件写多行f.writeline
阅读全文
摘要:作者:Tyler Ning出处:http://www.cnblogs.com/tylerdonet/本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过以下邮箱地址williamningdong@gmail.com 联系我,非常感
阅读全文
摘要:一、计算文件的行数 最简单的办法是把文件读入一个大的列表中,然后统计列表的长度.如果文件的路径是以参数的形式filepath传递的,那么只用一行代码就可以完成我们的需求了:count = len(open(filepath,'rU').readlines()) 如果是非常大的文件,上面的方法可能很慢
阅读全文
摘要:我们在写页面的时候经常会遇到需要图片自适应容器大小这样的情况,下面我就开门见山的说明一下怎样去实现这样一个效果。 1.简单的做法 1 2 3 4 5 <div> <img src="1.jpg" alt=""> </div> 1 2 3 4 5 <div> <img src="1.jpg" alt=
阅读全文
摘要:#文件写模式f=open('a.txt','w',encoding='utf-8')#文件写f.write('11111\n')f.write('2222\n')f.write('3333\n4444\n')#文件写多行f.writelines(['a\n','b\n','c\n'])#关闭f.cl
阅读全文
摘要:#可以进行多个文件同时打开,并且不用关心文件有关闭的问题 # with open('a.txt','r',encoding='utf-8') as f,open('b.txt') as f1:
阅读全文
摘要:#打开文件 # f=open('a.txt','r',encoding='utf-8') # 读取全部 # res=f.read() # print(res) #读一行 # print(f.readline(),end='') # print(f.readline(),end='') #读多行 # print(f.readlines()) # print(f) # 关闭文件 # f.close...
阅读全文
摘要:按存值个数区分 标量/原子类型:数字,字符串 容器类型:列表,元组,字典 按可变不可变区分 可变:列表,字典 不可变:数字,字符串,元组 按访问方式区分 直接访问:数字 按照索引访问(序列类型):字符串,列表,元组 key访问(映射类型) 字典
阅读全文
摘要:定义(集合内可以有多个元素,但是每个元素都必须是不可变类型,即可hash类型,集合内的元素唯一,集合是无序的): pythons=['a','b','c','d','e','f'] s1=set('hello') print(s1,type(s1)) s={'a',3,9,'b'} #关系运算??? # print(s) #集合优先掌握的方法 pythons={'a','b','c','d'
阅读全文
摘要:定义(元组是有序的且值是不可重复的):age=(11,22,33,44,55,33) 或 age=tuple((11,22,33,44,55)) 或 name = "a", "b", "c", "d"; #取值print(age[2])# 范围取值print(age[1:4])# 某个元素个数pri
阅读全文
摘要:定义(字典的key必须是不可变类型,也成为可hash类型,并且字典是无序的): info={'name':'egon','age':18,'sex':'male'} 或 info=dict({'name':'egon','age':18,'sex':'male'}) # 取某个KEY的值 print(info['age']) # 增加KEY和值 info['height']=1.80 pri...
阅读全文
摘要:#给多个变量赋值data=['alex',84,[1900,3,38]]name,age,birth=dataprint(name)print(age)print(birth)#msg='hello'a,b,c,d,e=msgprint(a,b,c,d,e) msg='hello'a,_,_,_,b
阅读全文
摘要:定义: my_girl_friends=['aa','bb','cc',4,10,30] 或my_girl_friends=list(['aa','bb','cc',4,10,30]) # 获取类型 print(type(my_girl_friends)) #取第几个位置的取 print(my_girl_friends[2]) #取范围第几到第几的值 print(my_girl_frien...
阅读全文
摘要:x = str('aaa') 或 x = 'aaaa' 常用函数: 通过边界查找字符串中的字符: name = 'egon' print(name[0]) 移除左右空白: name = 'egon' name=name.strip() # print(name.lstrip('*')) 去除左边的空
阅读全文
摘要:二进制:bin() 八进制:oct() 十六进制:hex()
阅读全文
摘要:可变变量:也就是ID不变,值可以变,这种类型叫可变变量,如:字典 不可变变量:即值一变id也变,即重新创造一个空间存值,如int、str等
阅读全文
摘要:eval(str)函数很强大,官方解释为:将字符串str当成有效的表达式来求值并返回计算结果。所以,结合math当成一个计算器很好用。 eval()函数常见作用有: 1、计算字符串中有效的表达式,并返回结果 >>> eval('pow(2,2)') 4 >>> eval('2 + 2') 4 >>>
阅读全文
摘要:在pyton2.x: 1、input是接受什么输出什么类型 2、raw_input 是接受什么类型最后输出的是都是字符串同3.x一样 在pyton3.x: 只有input 他的功能与python2.x中的raw_input相同
阅读全文
摘要:在Python循环终止语句有三种: 1、break break用于退出本层循环 示例如下: 2、continue continue为退出本次循环,继续下次循环 示例如下: 3、自定义标记 Tag 自已定义一个标记为True或False 示例代码:
阅读全文
摘要:语法: 只要while条件成立就一直循环执行下边的代码 示例: 执行结果: while....else 语句 只要while 正常退出执行else 的语句,不是经过中止语句中止退出的 示例: 结果:
阅读全文
摘要:在Python if语句分为单分支、双分支、多分去如下: 单分支: 双分支: 多分支:
阅读全文
摘要:计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算数运算、比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算,今天我们暂只学习算数运算、比较运算、逻辑运算、赋值运算 算数运算以下假设变量:a=10,b=20 比较运算以下假设变量:a=10,b=20 赋值运算以下假设变量:
阅读全文
摘要:Python 用有:%s、%d %s是字符串占位它可以接受数字或字符串 %d 是只可以接收数字 如下:
阅读全文
摘要:Python字符串拼接只能用加号或乘号,加即拼到一块,乘则是字符串翻倍 字符串的拼接用+号,但最好少用+,因为用加号通常是在内存中新开辟一个空间去存拼接的值,能少用则少用
阅读全文
摘要:数字类型: 整型数字:用来表示年龄、QQ号等 qq = 8180874 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647 在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223
阅读全文
摘要:分为单行注释:用#来进行注释 #XXXXXX 多行注释:三个单引号引起来即 ''' XXXXXX '''
阅读全文
摘要:常量:即永远不变的量在Python中没有专门的语法来定义常量,但通常用全部大写来表示常量如: PIE = 3.14159265
阅读全文
摘要:在Python中变量名与变量值的只是绑定关系如图,变量名只是一个标识符与变量值绑定在一起而已
阅读全文
摘要:获取变量的三个特征: id:id(变量名) type:type(变量名) value: 变量名
阅读全文
摘要:变量:顾名思义变化的量 定义: 变量名 = 变量值 变量的值体现了变量的状态 变量的定义方式: 1、驼峰体即 OldBoy 2、下划线 old_boy 并且定义的要有意义 建义用下划线方法定义
阅读全文
摘要:1、交互执行即黑屏命令行执行 优点:即时调时程序,调试方便 缺点:无法永久无法保存代码 2、即文件存储代码执行Python代码文件 优点:可以永久保存代码 缺点:调试不方便
阅读全文
摘要:1、先启动Python解释器 2、Python解释器读取python代码文件从硬盘读到内存中 3、再进行解释执行
阅读全文
摘要:先去官网下载解释器 https://www.python.org/downloads/windows/ 然后下载windows可执行文件如图: 下载完成后进行傻瓜似安装,记的勾选appendtopath 1. windows下python多版本共存: 这里以 python2.7 和 python3.
阅读全文
摘要:1、Cpython(最常用的版本) Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。 2、Jyhton Python的Java实现,Jython会将Python代码动态编译成Java字节码,
阅读全文
摘要:官方有一句话可见答案:In summary : Python 2.x is legacy, Python 3.x is the present and future of the language
阅读全文
摘要:1989年,Guido开始写Python语言的编译器。 1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。 Granddaddy of Python
阅读全文
摘要:谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发 CIA: 美国中情局网站就是用Python开发的 NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算 YouT
阅读全文
摘要:1、WEB开发——最火的Python web框架Django, 支持异步高并发的Tornado框架,短小精悍的flask,bottle, Django官方的标语把Django定义为the framework for perfectionist withdeadlines(大意是一个为完全主义者开发的
阅读全文
摘要:python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想
阅读全文
摘要:编程语言共分为三类 1、机器语言 机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。 优点:灵活、直接执行和速度快。 缺点:不同型号的计算机其机器语言是不相通的,按着一种计算机的机器指令编制的程序,不能在另一种计算机上执行。 2、汇编语言 汇编语言的实质和机器语言是相同的,都是
阅读全文