最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python之yield和return的對(duì)比分析

 更新時(shí)間:2023年08月14日 11:44:47   作者:凍梨不是梨  
這篇文章主要介紹了python之yield和return的對(duì)比分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

python yield和return的對(duì)比

  • 相同點(diǎn):都是返回函數(shù)執(zhí)行的結(jié)果
  • 不同點(diǎn):return 在返回結(jié)果后結(jié)束函數(shù)的運(yùn)行,而yield 則是讓函數(shù)變成一個(gè)生成器,生成器每次產(chǎn)生一個(gè)值(yield語(yǔ)句),函數(shù)被凍結(jié),被喚醒后再產(chǎn)生一個(gè)值

例子:求一組數(shù)的平方值

return 實(shí)現(xiàn):

def squre(n):
? ? ls = [i*i for i in range(n)]
? ? return ls
for i in squre(5):
? ? print(i, end=' ?')

結(jié)果為:

0  1  4  9  16  

yield 實(shí)現(xiàn):

def squre(n):
? ? for i in range(n):
? ? ? ? yield i*i
for i in squre(5):
? ? print(i, end=' ?')

結(jié)果為:

0  1  4  9  16  

yield 生成器相比 return一次返回所有結(jié)果的優(yōu)勢(shì):

(1)反應(yīng)更迅速

(2)更節(jié)省空間

(3)使用更靈活

python3中函數(shù)里的return和yield共存時(shí)的細(xì)節(jié)

在python3中,生成器的創(chuàng)建方式有兩種:

利用列表生成式和函數(shù)中添加yield

在這需要注意的是,當(dāng)采集函數(shù)創(chuàng)建生成器時(shí),如果函數(shù)中含有return,則不會(huì)通過(guò)return得到任憑結(jié)果,return中止當(dāng)前生成器,如果執(zhí)行next()會(huì)報(bào)錯(cuò)。

def f1():
? ? for i in range(10):
? ? ? ? print(i)
? ? ? ? i +=1
? ? ? ? yield i
? ? ? ? return i
f = f1()
next(f)
next(f)
next(f)
next(f)

函數(shù)有了yield后,函數(shù)名加()得到一個(gè)生成器。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實(shí)現(xiàn)飛船游戲的縱向移動(dòng)

    python實(shí)現(xiàn)飛船游戲的縱向移動(dòng)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)飛船游戲的縱向移動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • 基于Python實(shí)現(xiàn)Windows帶寬監(jiān)控工具

    基于Python實(shí)現(xiàn)Windows帶寬監(jiān)控工具

    這篇文章主要為大家詳細(xì)介紹了如何基于Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的Windows帶寬監(jiān)控工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-09-09
  • Django REST為文件屬性輸出完整URL的方法

    Django REST為文件屬性輸出完整URL的方法

    這篇文章主要給大家介紹了關(guān)于Django REST如何為文件屬性輸出完整URL的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用django具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-12-12
  • 給ubuntu18安裝python3.7的詳細(xì)教程

    給ubuntu18安裝python3.7的詳細(xì)教程

    這篇文章主要介紹了給ubuntu18安裝python3.7的詳細(xì)教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Python的輸入,輸出和標(biāo)識(shí)符詳解

    Python的輸入,輸出和標(biāo)識(shí)符詳解

    這篇文章主要介紹了介紹了Python的輸入,輸出和標(biāo)識(shí)符,有需要的朋友們可以參考一下,希望能給您帶來(lái)幫助
    2022-01-01
  • 基于高德地圖API在Python中實(shí)現(xiàn)地圖功能的方法示例詳解

    基于高德地圖API在Python中實(shí)現(xiàn)地圖功能的方法示例詳解

    本文介紹在高德開(kāi)放平臺(tái)中,申請(qǐng)、獲取地圖API的Key的方法,同時(shí)通過(guò)簡(jiǎn)單的Python代碼,調(diào)取API信息,對(duì)所得Key的可用性加以驗(yàn)證,感興趣的朋友一起看看吧
    2025-01-01
  • Python代碼統(tǒng)計(jì)耗時(shí)的方法詳解

    Python代碼統(tǒng)計(jì)耗時(shí)的方法詳解

    在現(xiàn)代軟件開(kāi)發(fā)中,性能優(yōu)化是一個(gè)至關(guān)重要的環(huán)節(jié),無(wú)論是開(kāi)發(fā)大型系統(tǒng)還是小型工具,開(kāi)發(fā)者都需要對(duì)代碼的執(zhí)行時(shí)間進(jìn)行精確測(cè)量,以便找出瓶頸并優(yōu)化性能,本文給大家介紹了Python代碼統(tǒng)計(jì)耗時(shí)的方法,需要的朋友可以參考下
    2025-02-02
  • Python處理大量Excel文件的十個(gè)技巧分享

    Python處理大量Excel文件的十個(gè)技巧分享

    每天被大量Excel文件折磨的你看過(guò)來(lái)!這是一份Python程序員整理的實(shí)用技巧,不說(shuō)廢話(huà),直接上干貨,文章通過(guò)代碼示例講解的非常詳細(xì),需要的朋友可以參考下
    2025-05-05
  • Python+Selenium鍵盤(pán)鼠標(biāo)模擬事件操作詳解

    Python+Selenium鍵盤(pán)鼠標(biāo)模擬事件操作詳解

    這篇文章主要帶大家一起學(xué)習(xí)一下Selenium的元素的基本操作與鼠標(biāo)鍵盤(pán)模擬事件的操作,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-06-06
  • python tkinter canvas使用實(shí)例

    python tkinter canvas使用實(shí)例

    這篇文章主要介紹了python tkinter canvas使用實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11

最新評(píng)論

河北省| 景谷| 老河口市| 上饶县| 钟祥市| 冀州市| 金堂县| 泰兴市| 都匀市| 安泽县| 汝城县| 黑龙江省| 梁河县| 麻城市| 疏勒县| 从江县| 兴海县| 宁国市| 永州市| 青海省| 奉节县| 翁源县| 子长县| 平潭县| 桐乡市| 唐海县| 南开区| 新绛县| 布尔津县| 永新县| 汝城县| 庆元县| 大同县| 皋兰县| 炎陵县| 莆田市| 塘沽区| 都匀市| 望奎县| 金沙县| 西丰县|