欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python列表推導(dǎo)式與生成器表達(dá)式用法示例

 更新時(shí)間:2018年02月08日 09:38:43   作者:Rangethan  
這篇文章主要介紹了Python列表推導(dǎo)式與生成器表達(dá)式用法,簡單描述了Python列表推導(dǎo)式與生成器表達(dá)式的概念、功能,并結(jié)合具體實(shí)例形式分析了Python列表推導(dǎo)式與生成器表達(dá)式簡單使用技巧,需要的朋友可以參考下

本文實(shí)例講述了Python列表推導(dǎo)式與生成器表達(dá)式用法。分享給大家供大家參考,具體如下:

和列表一樣,列表推導(dǎo)式也采用方括號[]表示,并且用到了一個(gè)簡寫版的for循環(huán),第一部分是一個(gè)生成結(jié)果列表元素的表達(dá)式,第二部分是一個(gè)輸入表達(dá)式上的循環(huán)。閱讀理解列表表達(dá)式的推薦做法是先從里面的for循環(huán)開始,向右查看是否有if條件,然后將推導(dǎo)式開始的那個(gè)表達(dá)式映射到每一個(gè)匹配的元素上去。

>>> even_numbers = [x for x in range(10) if x%2 == 0]
>>> even_numbers
[0,2,4,6,8]

以上例子展示了使用if語句來過濾元素。

Python還支持另外一種和列表表達(dá)式類似的結(jié)構(gòu),叫做生成器表達(dá)式(generator expression),除了它有一種稱之為“惰性計(jì)算”的特點(diǎn)以外,它和列表推導(dǎo)式的用法基本一致。它的工作方式是每次處理一個(gè)對象,而不是一口氣處理和構(gòu)造整個(gè)數(shù)據(jù)結(jié)構(gòu),這樣做的潛在優(yōu)點(diǎn)是可以節(jié)省大量的內(nèi)存。

>>> even_numbers = (x for x in range(10000) if x%2 == 0)
>>> even_numbers
<generator object at 0x....>

在處理大量的數(shù)據(jù)是,最好考慮生成器表達(dá)式而不是列表推導(dǎo)式。

另一個(gè)列表推導(dǎo)式和生成器表達(dá)式的例子是:

>>> data = ['abc','def','I use python', 'hong201']
>>> sum([len(word) for word in data])
25
>>> sum(len(word) for word in data)
25

enumerate()是一個(gè)同時(shí)能讓你迭代和計(jì)數(shù)的內(nèi)置函數(shù),而for循環(huán)自身只能迭代而沒辦法計(jì)數(shù):

>>> data = [123,"abc",3.14]
>>> for i in enumerate(data):
...   print i
...
(0, 123)
(1, 'abc')
(2, 3.14)

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python列表(list)操作技巧總結(jié)》、《Python數(shù)組操作技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python函數(shù)使用技巧總結(jié)》、《Python入門與進(jìn)階經(jīng)典教程》及《Python數(shù)據(jù)結(jié)構(gòu)與算法教程

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

相關(guān)文章

  • Python的type函數(shù)結(jié)果你知道嘛

    Python的type函數(shù)結(jié)果你知道嘛

    這篇文章主要為大家介紹了Python的type函數(shù)結(jié)果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • Python遍歷pandas數(shù)據(jù)方法總結(jié)

    Python遍歷pandas數(shù)據(jù)方法總結(jié)

    本篇文章給大家詳細(xì)介紹了Python中遍歷pandas數(shù)據(jù)方法以及相關(guān)注意點(diǎn),對此有興趣的朋友參考學(xué)習(xí)下吧。
    2018-02-02
  • django的登錄注冊系統(tǒng)的示例代碼

    django的登錄注冊系統(tǒng)的示例代碼

    這篇文章主要介紹了django的登錄注冊系統(tǒng)的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • 詳解Python實(shí)現(xiàn)進(jìn)度條的4種方式

    詳解Python實(shí)現(xiàn)進(jìn)度條的4種方式

    這篇文章主要介紹了Python實(shí)現(xiàn)進(jìn)度條的4種方式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01
  • python 利用openpyxl讀取Excel表格中指定的行或列教程

    python 利用openpyxl讀取Excel表格中指定的行或列教程

    這篇文章主要介紹了python 利用openpyxl讀取Excel表格中指定的行或列教程,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Pipenv一鍵搭建python虛擬環(huán)境的方法

    Pipenv一鍵搭建python虛擬環(huán)境的方法

    這篇文章主要介紹了Pipenv一鍵搭建python虛擬環(huán)境的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • 如何運(yùn)行帶參數(shù)的python腳本

    如何運(yùn)行帶參數(shù)的python腳本

    這篇文章主要介紹了如何運(yùn)行帶參數(shù)的python腳本,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 分步驟教你用python一步步提取PPT中的圖片

    分步驟教你用python一步步提取PPT中的圖片

    今天要帶大家實(shí)現(xiàn)的是PPT圖片的提取。在我們學(xué)習(xí)工作中,PPT的使用還是非常頻繁的,但是自己做PPT是很麻煩的,所以就需要用到別人的模板或者素材,這個(gè)時(shí)候提取PPT圖片就可以減少我們很多工作。
    2021-09-09
  • python使用協(xié)程實(shí)現(xiàn)并發(fā)操作的方法詳解

    python使用協(xié)程實(shí)現(xiàn)并發(fā)操作的方法詳解

    這篇文章主要介紹了python使用協(xié)程實(shí)現(xiàn)并發(fā)操作的方法,結(jié)合實(shí)例形式詳細(xì)分析了Python協(xié)程的原理及使用Gevent實(shí)現(xiàn)協(xié)程操作的相關(guān)技巧與操作注意事項(xiàng),需要的朋友可以參考下
    2019-12-12
  • Python調(diào)用兩個(gè)機(jī)器人聊天的實(shí)戰(zhàn)

    Python調(diào)用兩個(gè)機(jī)器人聊天的實(shí)戰(zhàn)

    本文主要介紹了Python調(diào)用兩個(gè)機(jī)器人聊天,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09

最新評論