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

python中Genarator函數(shù)用法分析

 更新時間:2015年04月08日 10:54:57   作者:pythoner  
這篇文章主要介紹了python中Genarator函數(shù)用法,實例分析了Genarator函數(shù)的使用原理與相關(guān)技巧,需要的朋友可以參考下

本文實例講述了python中Genarator函數(shù)用法。分享給大家供大家參考。具體如下:

Generator函數(shù)的定義與普通函數(shù)的定義沒有什么區(qū)別,只是在函數(shù)體內(nèi)使用yield生成數(shù)據(jù)項即可。Generator函數(shù)可以被for循環(huán)遍歷,而且可以通過next()方法獲得yield生成的數(shù)據(jù)項。

def func(n): 
  for i in range(n):
    yield i 
for i in func(3):
  print i 
r=func(3) 
print r.next() 
print r.next() 
print r.next() 
print r.next()

運行結(jié)果如下:

0
1
2
0
1
2
Traceback (most recent call last):
 File "generator.py", line 10, in <module>
  print r.next()
StopIteration

yield保留字與return 語句的返回值和執(zhí)行原理都不相同。yield生成值并不會中止程序的執(zhí)行,返回值后程序繼續(xù)往后執(zhí)行。return 返回值后,程序?qū)⒅兄箞?zhí)行。

Generator函數(shù)一次只返回一個數(shù)據(jù)項,占用更少的內(nèi)存。每次生成數(shù)據(jù)都要記錄當(dāng)前的狀態(tài),便于下一次生成數(shù)據(jù)。

當(dāng)程序需要較高的性能或一次只需要一個值進(jìn)行處理時,使用generator函數(shù)。當(dāng)需要獲取一次性一組元素的值時,使用序列。

函數(shù)里只要有了yield,這個函數(shù)就會被編譯成一個generator 函數(shù)。generator函數(shù)object支持python iterator protocol。 每次調(diào)用這個對象的next,generator函數(shù)就執(zhí)行到y(tǒng)ield,獲取到y(tǒng)ield生成的值。如果函數(shù)返回,就拋出一個異常。這里有個概念就是generator 函數(shù)使用yield生成一個值,而不是返回一個值。生成之后函數(shù)還沒結(jié)束,返回了函數(shù)就結(jié)束了。

>>> x = gensquares(5)
>>> print x
<generator object at 0x00B72D78>
>>> print x.next()
0
>>> print x.next()
1
>>> print x.next()
4
>>> print x.next()
9
>>> print x.next()
16
>>> print x.next()
Traceback (most recent call last):
 File "<stdin>", line 1, in ?
StopIteration
>>>

希望本文所述對大家的Python程序設(shè)計有所幫助。

相關(guān)文章

  • 利用python爬取城市公交站點

    利用python爬取城市公交站點

    這篇文章主要介紹了利用Python爬蟲爬取城市公交站點的數(shù)據(jù),文中的代碼具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-12-12
  • Python 3.9的到來到底是意味著什么

    Python 3.9的到來到底是意味著什么

    本文主要介紹Python3.9的一些新特性比如說更快速的進(jìn)程釋放,性能的提升,簡便的新字符串函數(shù),字典并集運算符以及更兼容穩(wěn)定的內(nèi)部API,感興趣的朋友跟隨小編一起看看吧
    2020-10-10
  • python 獲取url中的參數(shù)列表實例

    python 獲取url中的參數(shù)列表實例

    今天小編就為大家分享一篇python 獲取url中的參數(shù)列表實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • python -m pip install 和 pip install 的區(qū)別解析

    python -m pip install 和 pip in

    python -m pip install <package> 使用了 -m 參數(shù)來確保以 Python 模塊的形式運行 pip,適用于確保在不同的環(huán)境中正確使用 pip,這篇文章主要介紹了python -m pip install 和 pip install 的區(qū)別,需要的朋友可以參考下
    2023-07-07
  • 圖解Python中深淺copy(通俗易懂)

    圖解Python中深淺copy(通俗易懂)

    這篇文章主要介紹了圖解Python中深淺copy(通俗易懂),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Windows系統(tǒng)下安裝Python的SSH模塊教程

    Windows系統(tǒng)下安裝Python的SSH模塊教程

    這篇文章主要介紹了Windows系統(tǒng)下安裝Python的SSH模塊教程,本文涵蓋了pycrypto、ecdsa、paramiko、OpenSSH、SSH等模塊的安裝,需要的朋友可以參考下
    2015-02-02
  • Python?分支結(jié)構(gòu)詳解

    Python?分支結(jié)構(gòu)詳解

    這篇文章主要介紹了Python?分支結(jié)構(gòu),分支結(jié)構(gòu)包括單分支結(jié)構(gòu)、雙分支結(jié)構(gòu)、多分支結(jié)構(gòu)等內(nèi)容,下文ui分支結(jié)構(gòu)進(jìn)行詳細(xì)分析,需要的小伙伴可以參考一下
    2022-02-02
  • django使用xadmin的全局配置詳解

    django使用xadmin的全局配置詳解

    今天小編就為大家分享一篇django使用xadmin的全局配置詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python強制子類重寫父類的兩種方法實現(xiàn)

    Python強制子類重寫父類的兩種方法實現(xiàn)

    在Python中,有時候我們希望某個類能夠被子類繼承并重寫其中的某些方法,本文主要介紹了Python強制子類重寫父類的兩種方法實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-02-02
  • 解決python3 網(wǎng)絡(luò)請求路徑包含中文的問題

    解決python3 網(wǎng)絡(luò)請求路徑包含中文的問題

    今天小編就為大家分享一篇解決python3 網(wǎng)絡(luò)請求路徑包含中文的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05

最新評論

钟祥市| 托里县| 利辛县| 长白| 垦利县| 布尔津县| 栖霞市| 光泽县| 长垣县| 河源市| 清水河县| 鹤峰县| 水城县| 若羌县| 安国市| 沿河| 新竹县| 陕西省| 永靖县| 南丹县| 读书| 大埔区| 申扎县| 濮阳县| 柞水县| 宣恩县| 岱山县| 恭城| 涟水县| 高雄市| 青浦区| 六枝特区| 浮梁县| 东光县| 云安县| 杭锦旗| 隆尧县| 肇庆市| 鄂温| 辰溪县| 维西|