码迷,mamicode.com
首页 > 其他好文 > 详细

yield 生成器例子

时间:2016-10-30 16:09:33      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:end   yield   nbsp   env   python   迭代   style   send   next   

 1 #!/usr/bin/env python
 2 #encoding: utf-8
 3 import time
 4 def consumer(name):
 5     print (%s 来吃包子了。。。 % (name))
 6     while True:
 7         baizi = yield  #执行到这会暂停,直到调用next的方法,然后在从这里执行
 8         print ("包子 [%s] 来了, 被 [%s] 吃了,,," % (baizi,name))
 9 
10 def producer():
11     c1 = consumer(lys)  #生成迭代器
12     c2 = consumer(zhy)
13     c1.__next__()  #迭代
14     c2.__next__()
15     for i in range(3):
16         print (开始重新做包子了,,,)
17         time.sleep(1)
18         print (做好了2个。来吃吧,,,)
19         c1.send(i) #发送给yied,接收参数
20         c2.send(i)
21 
22 producer()

 

yield 生成器例子

标签:end   yield   nbsp   env   python   迭代   style   send   next   

原文地址:http://www.cnblogs.com/liuyoushui/p/6013108.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!