久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > python yield的用法

python yield的用法

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-08 09:14:50 1699406090

通常大家遇到不會(huì)內(nèi)容,第一想法肯定是進(jìn)行搜索查找了,然而所有標(biāo)題叫簡(jiǎn)單易懂并非真的如此,我在查詢pythonyield就是,既然無簡(jiǎn)單易懂內(nèi)容,小編就幫大家集合整理出來。

結(jié)合網(wǎng)上教學(xué)內(nèi)容,指向yield就是迭代器,如果對(duì)yield并理解,大家暫且可以把yield理解成“return”,其使用方法與return大致相同,但含義有區(qū)別:

return(沒有return關(guān)鍵字的函數(shù)可認(rèn)為returnNone)關(guān)鍵字的意思就是將控制權(quán)交還調(diào)用者。而yield可翻譯為產(chǎn)出、產(chǎn)生,其控制權(quán)的轉(zhuǎn)移是暫時(shí)的,可以理解為保存狀態(tài)+return,當(dāng)再次調(diào)用時(shí),可從保存狀態(tài)中恢復(fù)數(shù)據(jù),繼續(xù)進(jìn)行相關(guān)操作。

參考代碼:

defg():

print('A')

yield1

print('B')

yield2

print('C')

foriing():

print(i)

運(yùn)行結(jié)果:

A

1

B

2

C

總結(jié)分析:

foriing()執(zhí)行g(shù)()

-->print('A')打印A

-->yield1返回值1并保存工作狀態(tài),這里i=1

-->print(i)打印1

-->繼續(xù)foriing()執(zhí)行g(shù)(),自yield1保存的工作狀態(tài)下恢復(fù)繼續(xù)執(zhí)行print('B'),打印B

-->yield2返回值2并保存工作狀態(tài),這里i=2

-->print(i)打印2

-->繼續(xù)foriing()執(zhí)行g(shù)(),自yield2保存的工作狀態(tài)下恢復(fù)繼續(xù)執(zhí)行print('C'),打印C

-->沒有yield返回值,因此for操作接受不到值,停止操作

看以上內(nèi)容你可能就明白yield和return的關(guān)系和區(qū)別了,帶yield的函數(shù)是一個(gè)生成器,而不是一個(gè)函數(shù)了,這個(gè)生成器有一個(gè)函數(shù)就是next函數(shù),next就相當(dāng)于“下一步”生成哪個(gè)數(shù),這一次的next開始的地方是接著上一次的next停止的地方執(zhí)行的,所以調(diào)用next的時(shí)候,只是接著上一步停止的地方開始,然后遇到y(tǒng)ield后,return出要生成的數(shù),此步就結(jié)束。

相信大部分小伙伴已經(jīng)弄明白了吧,大家可以根據(jù)以上操作,自己嘗試看看呢

以上內(nèi)容為大家介紹了pythonyield的用法,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT