生成器的作用的在單執行緒下實現並行,稱為攜程,比執行緒更小的單位,依附於執行緒def customer(name):
print("%s準備吃包子了"%name)
while true:
baozi = yield #生成器
print("%s吃了%s包子"%(name,baozi))
def producer():
c1 = customer("張三")
c2 = customer("李四")
c1.__next__() #啟用生成器
c2.__next__()
print("---正在做包子,別急---")
for i in range(3):
print("做好了2個豬肉餡的包子")
c1.send(i+1) #啟用生成器並賦乙個值
c2.send(i+1)
producer()
python生成器並行
生成器並行 import time defconsumer name print s 準備吃包子啦 name while true baozi yield print 包子 s 來了,被 s 吃了 baozi,name c consumer abc c.next b1 韭菜餡 c.send b1 s...
python生成器並行例項
生成器並行例項 send傳送值被yield接受到賦值給baozi變數 yield作用只是在這裡儲存這個值的當前狀態然後返回之後在呼叫next,又回到yield 單純呼叫next不會給yield傳值,next只是在呼叫yield,send是呼叫yield並且傳值 import time 協程def c...
python 生成器作用 Python生成器
生成器介紹 在函式內部包含yield關鍵字,那麼該函式執行的結果是生成器,生成器就是迭代器。生成器的功能 把函式結果做成迭代器 以一種優雅的方式封裝好iter,next 提供了一種自己定義迭代器的方式。使用生成器建立乙個迭代器 def a print a yield 11 使用yield,執行後返回...