python yield 简单用法_通过实例简单了解python yield使用方法
實(shí)例代碼如下
def demo():
print("開始執(zhí)行...")
while 1:
res = yield '這是返回值'
print("res:",res)
d1 = demo()
print(d1)
print(next(d1))
print("*"*20)
print(next(d1))
執(zhí)行結(jié)果如下:
開始執(zhí)行...
這是返回值
********************
res: None
這是返回值
代碼解釋,個人理解,說得不對希望能夠點(diǎn)出:
d1 = demo();生成一個對象,不會輸出任何內(nèi)容
print(d1); 這里不輸入任何內(nèi)容,因?yàn)槌绦虻谝淮斡龅統(tǒng)ield就暫停了,即使yield前面有輸出語句,一樣給輸出
print(next(d1)); 程序會接著yield繼續(xù)執(zhí)行,第二次遇到y(tǒng)ield,return“這是返回值”,加起來就會會輸出開始執(zhí)行...
這是返回值
print(next(d1));再次執(zhí)行next(d1),相當(dāng)于第三遇到y(tǒng)ield,因?yàn)樯弦徊较喈?dāng)于被return,res并沒有賦值,所以為None,繼續(xù)執(zhí)行while,第四次遇到y(tǒng)ield,輸出“這是返回值”
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
總結(jié)
以上是生活随笔為你收集整理的python yield 简单用法_通过实例简单了解python yield使用方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 福建建瓯持续暴雨:全城拉响防空警报
- 下一篇: idea全局搜索搜不全的BUG