- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認證網(wǎng)站身份V標記
- 域名注冊服務(wù)機構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機構(gòu):新網(wǎng)數(shù)碼
實例
def generator():
while True:
receive=yield 1
print('extra'+str(receive))
g=generator()
print(next(g))
print(g.send(111))
print(next(g))
輸出:
extra111
1
extraNone
1
為什么會這樣呢,點進send就能看到一句話
send:Resumes the generator and "sends" a value that becomes the result of the current yield-expression.
就是說 這里yield 1整體被視為一個表達式,你send的內(nèi)容會作為這個表達式的值,隨便你左邊用什么東西接收或者不接收,總之yield就是你send進來的那個東西。這個表達式變成你send進來后的東西后繼續(xù)執(zhí)行,再次遇到y(tǒng)ield,輸出yield后面跟著的表達式。
當然通常使用的話都不會輸出一個常量,會輸出一個和接收到的東西相關(guān)的量,不然豈不是白白發(fā)送了。
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP