日本三级片在线观看视频_西西大胆午夜人体视频无码_少妇无码一区二区_亚洲天堂超碰_极品少妇被猛的白浆直流_91精品云霸高清中文字幕_草草五月天伊人_久久少妇无码专区_欧美激欧美啪啪5老太_日韩在线在线成人

python生成式的send()方法

2017-05-10 08:30:49 9183

實(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

為什么會這樣呢,點(diǎn)進(jìn)send就能看到一句話

send:Resumes the generator and "sends" a value that becomes the result of the current yield-expression.

就是說 這里yield 1整體被視為一個表達(dá)式,你send的內(nèi)容會作為這個表達(dá)式的值,隨便你左邊用什么東西接收或者不接收,總之yield就是你send進(jìn)來的那個東西。這個表達(dá)式變成你send進(jìn)來后的東西后繼續(xù)執(zhí)行,再次遇到y(tǒng)ield,輸出yield后面跟著的表達(dá)式。

當(dāng)然通常使用的話都不會輸出一個常量,會輸出一個和接收到的東西相關(guān)的量,不然豈不是白白發(fā)送了。


提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: