您的位置:首页 > 编程语言 > Python开发

初学 Python(十四)——生成器

2016-12-04 16:58 260 查看

初学 Python(十四)——生成器

  初学 Python,主要整理一些学习到的知识点,这次是生成器。

# -*- coding:utf-8 -*-

'''''
生成式的作用:
减少内存占有,不用一次性
创建list中所有的元素,而
是在需要的时候创建
'''

#创建generator有2种方式

#第一种将列表表达式中的[]改为()即可

g = (x*x for x in range(10))

print g
for n in g:
print n

#第二种,关键字yield

def fab(max):
n,a,b = 0,0,1
while n < max:
yield b
a,b = b,a+b
n = n+1
g1 = fab(6)

for n in g1:
print n

'''''
再说区别:
为什么加了一个yield就变成了生成器?
因为yield一加,就不再像函数一样顺序执行
而是每次调用时,执行到yield时返回,下次再
调用时从yield后面的语句开始执行
'''
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: