Python —— 杂记

来源:互联网 发布:中兴网络机顶盒怎么用 编辑:程序博客网 时间:2024/05/19 17:59

未完待续。。。。

1. break & continue & pass

(1)break:结束整个循环,break后跳出此循环函数
(2)continue:结束当前循环,continue后继续此循环函数的下一轮循环
(3)pass:空语句,是为了保持程序结构的完整性。

2. 时间 —— time

import time# 获取从1970年到当前时刻的时隔time.time()   >>>15083650674.745# 获取当前时刻(年.月.日.时.分.秒.周几.一年的第几天.夏令时)time.localtime()   >>>time.struct_time(tm_year=2017, tm_mon=8, tm_mday=7, tm_hour=22, tm_min=16, tm_sec=27, tm_wday=0, tm_yday=219, tm_isdst=0)# 获取格式化当前时刻time.asctime()  >>>Mon Aug 07 22:14:27 2017# 获取格式化日期,%y表示二位数年份:17,%Y表示四位数:2017time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())   >>>2017-08-07 22:24:39  # 让进程休眠3stime.sleep(3)  # 获取日历import calendarcalendar.month(2016,8)>>> January 2016Mo Tu We Th Fr Sa Su             1  2  3 4  5  6  7  8  9 1011 12 13 14 15 16 1718 19 20 21 22 23 2425 26 27 28 29 30 31

3. 全局变量作用域——global

# A是全局变量,某函数对A值的改变仅作用于函数内部A = 0def sum(a,b):    A = a+b    print "这是局部变量A=", Aprint "这是全局变量A=",Asum(10,20)>>>"这是局部变量A=30">>>"这是全局变量A=0"   # 局部变量A的值仍未改变
# A是全局变量,但加入global后函数对A值的改变可作用于函数外部A = 0def sum(a,b):    global A    A = a+b    print "这是局部变量A=", Aprint "这是全局变量A=",Asum(10,20)print "这是函数赋值后的全局变量A=",A>>>这是全局变量A= 0>>>这是局部变量A= 30>>>这是函数赋值后的全局变量A= 30

4. 匿名函数 —— lambda

懒人专用函数:lambda 参数:表达式
优点:
(1)免去给函数取名的麻烦(高质量代码对函数名有一定要求)
(2)不必担心函数名冲突
(3)匿名函数也是一个函数对象,可以把匿名函数赋值给一个变量,再利用变量调用匿名函数

sum = lambda a,b:a+bprint sum(10,20)>>>30

5. 枚举函数 —— enumerate

(1)enumerate是Python内置函数,在字典上是枚举、列举的意思
(2)对于一个可迭代的(iterable)/可遍历的对象(list,字符串),enumerate将其组成一个索引序列,利用enumerate可以同时获得索引和值
(3)enumerate多用于for循环中

# enumerate( )传入一个参数:a = [2,4,'fg',000,'nnn']   #  对于一个列表,既要获取其索引又要获取其元素for index,item in enumerate(a):  #index表示索引序号,item表示列表元素    print index,item     # 本例中的index和item可用其他字母代替>>>(0,2)   #默认情况下,索引序号凶0开始   (1,4)   (2,'fg')   (3,000)   (4,'nnn')# enumerate( )传入2个参数:用enumerate指定查询的索引序号for i,j in enumerate(a,1):  # 指定索引序号从1开始,也可从其他数字开始    print i,j>>>(1,2)   #索引序号从1开始   (2,4)   (3,'fg')   (4,000)   (5,'nnn')

(4)enumerate还可以用于统计文件行数:

# 传统方式:count = len(open(filepath,'r').readlines())'''注意:   这种方式虽然简单,但速度比较慢,且当文件较大时甚至不能工作'''
# 利用enumeratecount = -1for i,j in enumerate(open(filepath,'r')):    count +=1

5. 数据类型 —— type & isinstance

(1)查看数据类型:type( )

# 查看数据结构类型a = 3b = [1,2,3]type(a)>>>int    type(b)>>>list# 查看数据基本类型class Student:    def printer(self,name):        print nameAa = Student('hua')print type(Student)>>><type 'classobj'>    # Student是类print type(Aa)>>><type 'instance'>    # Aa是实例

(2)判断数据类型:isinstance( )

isinstance('a',str)    # 判断a是否为string型>>>Trutisinstance([2,3],int)>>>Falseisinstance([2,3],(int,list))  # 判断[2,3]是否为int型或list型>>>True

7. range( )

range( )函数能返回一系列连续增加整数,它的工作方式类似于分片,可以生产列表对象。range( )函数常在for循环中作为索引使用

(1)range( )函数传入一个参数,表示从0开始的整数列表(不包含此参数)

range(5)  >>>[0,1,2,3,4]  # 注意:不包含5

(2)range( )函数传入两个参数,第一个参数表示起始位,第二个参数表示终止位(不被包含)

range(4,8)>>>[4,5,6,7]    # 从0到7,不包含8

(3)range( )函数传入三个参数,第三个参数表示数列的等差值

range(0,12,3)>>>[0,3,6,9]  # 元素之间均相差3

(4)也可以实现递减

方法1

range(4,-4,-2)>>>[4, 2, 0, -2]   # 从4到-4,等差为-2range(4,-4,2)>>>[]   

方法2

range(5)>>>[0,1,2,3,4]range(5)[::-1]   # 倒序>>>[4,3,2,1,0]

(5)常用与for( )循环

for i*i in range(1,6)>>>[1,4,3,16,25]
原创粉丝点击