首页 > 代码库 > python 生成器从放弃到玩转

python 生成器从放弃到玩转

time
(name):
    % name
    :
        baozi = % (baoziname)

c = counsumer()
c.()

b1 = c.send(b1)
():
    c = counsumer()
    c2 = counsumer()
    c.()
    c2.()
    i ():
        time.sleep()
        c.send(i)
        c2.send(i)

producer()


生成器:

一边循环,一边计算的机制,称为生成器 英文:generator
个人总结:
目的
1.节省内存,计算前,不会一次性把列表都准备出来,只有要计算这条数据时,才会被生成
2.在数据的处理过程中插入自己的逻辑


解释上面的代码执行步骤

1.

c = counsumer("程荣花")

生成一个迭代对象

2.

c.next()

执行print "程荣花准备吃包子"

执行

:
        baozi =

可以看到,迭代器到yield就结束执行


3.

b1 = c.send(b1)

c.send(b1),传参给yield,并再一次调用yield


4.

baozi = % (baoziname)

执行



本文出自 “expect批量同步数据” 博客,请务必保留此出处http://4249964.blog.51cto.com/4239964/1897655

python 生成器从放弃到玩转