# 通过列表来创建生成器
print [i for i in xrange(5)]
# 通过`yield`来创建生成器
def func():
for i in xrange(5):
yield i # 相当于return,也是生成器有一个序列。但是,每次调用时才使用一个,不占用内存
print '############## 通过函数使用 #################'
def myprint(f):
for i in f:
print i
myprint(func())
print '############## 通过next()调用 #################'
f = func()
print f # 此时生成器还没有运行,通过next调用
print f.next()
print f.next()
print f.next()
print f.next()
print f.next()Python yield例子
最新推荐文章于 2024-11-20 10:18:24 发布
本文介绍了如何使用Python中的生成器。首先展示了如何通过列表推导式快速创建生成器,并且通过`yield`关键字定义了一个简单的生成器函数。接着,演示了两种调用生成器的方式:一种是通过一个包装函数迭代打印生成器中的所有元素;另一种则是直接通过`next()`方法逐个获取生成器中的项。
4453

被折叠的 条评论
为什么被折叠?



