python从入门到放弃-09-高级特性
####高级特性####
高级特性=高级特性
####迭代####
类似于可以使用循环遍历list或者tuple,这种函数就是迭代函数
无所谓有无下表,比如dic函数
Iterable需要导入
from collections import Iterable
####列表生成式####
古老办法太复杂,利用列表生成式快速完成
生成list [1,2,3,4,5,6,7]简单
但是生成list的每个元素平方复杂
####生成器####
如果我们需要创建一个列表,这个列表如果需要贼大的内存咋整?
这时候就用生成器
生成器是在循环过程不断推出最新的元素
这样省了非常多的空间
a = (i**2 for i in range(1,100)) for j in a: print(j)
a.__next__()
创建生成器的办法是讲[]改成()
####斐波拉契数列####
shu = int(input('你需要的斐波那契:')) def feibonaqi(shu): a,b,cishu = 0,1,1 while cishu <= shu: print(b) a,b=b,a+b cishu +=1 feibonaqi(shu)
def feibonaqi(shu): a,b,cishu = 0,1,1 while cishu <= shu: yield b a,b=b,a+b cishu +=1 s = feibonaqi(shu) for i in s: print(i)