1. 程式人生 > >pyhon的yileld的一點筆記

pyhon的yileld的一點筆記

yield感覺很神祕,感覺也不好理解,學習pyhon最後終歸是要學習這個東西,研究了一段時間,把自己的筆記寫下來

說簡單點就是遇到yield就停止往下執行程式碼,也包括不執行yield這條語句,然後返回結果後,繼續從yield這條語句開始執行,這裡也包括執行了yield這條語句,真正的執行了,上面的返回只是單純的跳出執行,返回沒有執行yield,然後再遇到yield再返回,然後再回來執行,如此往復

import time
def f():
    print("OK1")
    time.sleep(3)
    count = yield 5
    print("aaa")

    print(count)
    print(
"ok2") yield 67 c = f() next(c) #c.send(999)

執行結果如下

D:\python\venv\Scripts\python.exe D:/python/xiecheng2.py
OK1

Process finished with exit code 0

import time
def f():
    print("OK1")
    time.sleep(3)
    count = yield 5
    print("aaa")

    print(count)
    print("ok2")
    yield 67

c 
= f() next(c) c.send(999)

執行結果如下

D:\python\venv\Scripts\python.exe D:/python/xiecheng2.py
OK1
aaa
999
ok2

Process finished with exit code 0

可見count變成了999