首页 > 编程语言 > 详细

python 迭代器

时间:2018-03-19 14:53:41      阅读:214      评论:0      收藏:0      [点我收藏+]
def add(s,x):     return  s+x      def gen():     for i in range(4):         yield i          base = gen() for n in [1,10]:     base=(add(i,n) for i in base)           print(list(base))


n等于1时:

执行完base = (add(i, n) for i in base)

后base是:

i+n for i in [0,1,2,3]

接下来n=10:

base变为i+n for i in (i+n for i in [0,1,2,3])

此时n等于10,再去计算base, base一直是个生成器。

其中print list(base) 是对生成器进行迭代,此时n是按照10来计算。


python 迭代器

原文:http://blog.51cto.com/11736068/2088499

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!