python 语句
来源:互联网 发布:三星note8双卡网络设置 编辑:程序博客网 时间:2024/06/07 17:11
1.循环
循环中常用的一些函数
1.range & xrange
2.enumerate return index&x
3.zip就是从多个列表中,依次各取出一个元素。每次取出的(来自不同列表的)元素合成一个元组,合并成的元组放入zip()返回的列表中
循环对象
1.循环对象包含一个next方法和StopIteration对象
相对于序列,用循环对象来控制循环的好处在于:可以不用在循环还没有开始的时候,就生成每次要使用的元素。所使用的元素在循环过程中逐次生成。
这样,就节省了空间,提高了效率,并提高编程的灵活性。
range就是提前生成序列,而xrange则生成一个循环对象,还有如open等
2. iter()函数和循环器(iterator)
从技术上来说,循环对象和for循环调用之间还有一个中间层,就是要将循环对象转换成循环器(iterator)。这一转换是通过使用iter()函数实现的。但从逻辑层面上,常常可以忽略这一层,所以循环对象和循环器常常相互指代对方
3. 生成器(generator)
生成器的主要目的是构成一个用户自定义的循环对象。
方式:return位置改为yield
4.列表推到 list comprehension
表推导的机制实际上是利用循环对象
2.闭包
无参数的闭包
def line_conf(): b=15 def line(x): return 2*x+b return lineif __name__=="__main__": b=12 my_line=line_conf() print(my_line.__closure__) print(my_line.__closure__[0].cell_contents) print(my_line(5))
有参数的闭包(泛函)
def line_conf(a,b): def line(x): return a*x+b return lineif __name__=="__main__": line1=line_conf(1,1) line2=line_conf(4,5) print(line1(4),line2(4))
3.lamda函数
lamda函数也叫做匿名函数
好处在于:代码精炼,不必想名称,在有些位置lamda函数使代码更容易理解。
lambda tricks:
>>> fs=[(lambda n: i+n ) for i in range(10)]>>> for f in fs:... f(3)... 12,12,12,12,12,12,12,12,12,12改为
>>> fs=[(lambda n,i=i: i+n ) for i in range(10)]>>> for f in fs:... f(3)... 3,4,5,6,7,8,9,10,11,12
4.内置函数
dir(__buildins__)即可打印出所有的内置函数
5.if else
def max1(a,b): if a>b: c=a else: c=b return cdef max2(a,b): c=a if a>b else b return cdef max3(a,b): c=[b,a][a>b] return cdef max4(a,b): c=(a>b and [a] or [b])[0] return cif __name__=="__main__": a, b, c = 1, 2, 3 print max1(a,b) print max2(a,b) print max3(a,b) print max4(a,b)
6.for循环
for
else 在非break退出的情况下会执行else后面的语句,清晰明了
0 0
- python 语句
- python语句
- python语句
- python 语句
- Python 语句
- Python语句
- 【Python】Python条件语句
- Python 06:Python控制语句
- Python的if语句
- python 基本语句
- Python-if语句
- Python中的条件语句
- Python中的循环语句
- Python的判断语句
- python--assert语句
- python if语句语法
- python with 语句研究
- python的with语句
- JS 判断 浏览器 是否禁用Cookie
- DP31 取大小游戏中的最优策略(附:如何对DP[0][n]进行对角线递推) Optimal Strategy for a Game @geeksforgeeks
- 利用HandVu进行手部动作识别分析
- do{}while(0)的意义和用法
- some shell commands
- python 语句
- 重写的方法形参必须相同
- some yum/rpm commands
- Android添加垂直滚动ScrollView
- 在fedora上打开sshd
- android ViewFlipper
- 安装arch linux时用到的命令
- Android FUSE
- 卸载jdk1.7安装1.6