亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python中列表遍歷使用range和enumerate的區(qū)別講解

 更新時(shí)間:2022年12月26日 14:40:11   作者:錢塘江漁夫  
這篇文章主要介紹了Python中列表遍歷使用range和enumerate的區(qū)別,在Python編程語言中,遍歷list有range和enumerate方法,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

前言

兩者的比較只是編程實(shí)現(xiàn)上的差異,請不要絕對化、教條化。這里只從技術(shù)方面討論。這種區(qū)別非常細(xì),局限于特定場合。

在Python編程語言中,遍歷list有range和enumerate方法,示例:

num_list = [8, 2, 4, 5, 0, -1,7]

for i in range(len(num_list)):
    print(f'i: {i} num_list[i]: {num_list[i]}')
print('-------------------')
for i, num in enumerate(num_list):
    print(f'i: {i} num: {num}')

輸出結(jié)果:

i: 0 num_list[i]: 8
i: 1 num_list[i]: 2
i: 2 num_list[i]: 4
i: 3 num_list[i]: 5
i: 4 num_list[i]: 0
i: 5 num_list[i]: -1
i: 6 num_list[i]: 7
-------------------
i: 0 num: 8
i: 1 num: 2
i: 2 num: 4
i: 3 num: 5
i: 4 num: 0
i: 5 num: -1
i: 6 num: 7

分析 range函數(shù)

Python內(nèi)置的range函數(shù)返回的是一個(gè)整數(shù)序列,一般用于循環(huán)結(jié)構(gòu)中

range語法:range(start, end, step)

  • start:計(jì)數(shù)開始位置
  • end:計(jì)數(shù)結(jié)束位置
  • step:步長(默認(rèn)是1,非必填參數(shù))

range一般適用于迭代一系列整數(shù)

range是通過遍歷索引取訪問list的元素的。

enumerate函數(shù)

Python有一個(gè)內(nèi)置的enumerate函數(shù),它可以解決剛才的問題,可以更簡單。enumerate能夠把任何一種迭代器封裝成惰性生成器
,這樣的話,每次循環(huán)的時(shí)候,它只需要從迭代器里面獲取下一個(gè)值就行了,同時(shí),它還會給出本輪循環(huán)的序號,即生成器每次產(chǎn)生一對輸出值

enumerate語法:enumerate(sequence, start)

  • sequence:一個(gè)序列、迭代器或其他支持迭代對象
  • start:起始位置(默認(rèn)是0,非必填參數(shù))

對比,永遠(yuǎn)是限定環(huán)境。不區(qū)分前提的對比毫無意義。

點(diǎn)擊這里,可以看到有人用千萬級別list測試的秒級別的差異。從該對比可以看出,對于數(shù)據(jù)量少、執(zhí)行時(shí)間不敏感的場合,二者差異可以忽略不計(jì);對于數(shù)據(jù)量過度使用場合,二者有明顯差異。但這個(gè)差異是否被接受,看大家自己的意愿。

總的來說:

range通過索引遍歷元素,屬于間接訪問。enumerate直接遍歷元素,效率稍高,代碼簡潔。range輸出的是元素的索引。enumerate輸出的是元素的索引和元素。 結(jié)論:

建議使用enumerate代替range。注意不是強(qiáng)制,每個(gè)人有自己的習(xí)慣。

核心要點(diǎn):

(1)enumerate函數(shù)提供了一種精簡的寫法,可以在遍歷迭代器時(shí)獲知每個(gè)元素的索引。

(2)盡量用enumerate來改寫那種將range與下標(biāo)訪問相結(jié)合的序列遍歷代碼。

(3)可以給enumerate提供第二參數(shù),以指定開始計(jì)數(shù)時(shí)所用的值(默認(rèn)為0)

(4)在只需要value的情況下,直接使用in list的效率更高

到此這篇關(guān)于Python中列表遍歷使用range和enumerate的區(qū)別的文章就介紹到這了,更多相關(guān)Python中列表遍歷內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python3 搭建Qt5 環(huán)境的方法示例

    Python3 搭建Qt5 環(huán)境的方法示例

    這篇文章主要介紹了Python3 搭建Qt5 環(huán)境的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • pyside寫ui界面入門示例

    pyside寫ui界面入門示例

    PySide 是一個(gè)python綁定的跨平臺GUI Qt庫。目前,支持Python的Qt庫有兩個(gè)PyQt和PySide。下面寫一個(gè)簡單的hello程序?qū)W習(xí)他的使用方法
    2014-01-01
  • GPU版本安裝Pytorch的最新方法步驟

    GPU版本安裝Pytorch的最新方法步驟

    最近深度學(xué)習(xí)需要用GPU版本的pytorch來加速運(yùn)算,所以下面這篇文章主要給大家介紹了關(guān)于GPU版本安裝Pytorch的最新方法步驟,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • Python實(shí)現(xiàn)讀取文件夾按數(shù)字排序功能

    Python實(shí)現(xiàn)讀取文件夾按數(shù)字排序功能

    這篇文章主要介紹了Python讀取文件夾按數(shù)字排序,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-09-09
  • 解決python3中自定義wsgi函數(shù),make_server函數(shù)報(bào)錯(cuò)的問題

    解決python3中自定義wsgi函數(shù),make_server函數(shù)報(bào)錯(cuò)的問題

    下面小編就為大家分享一篇解決python3中自定義wsgi函數(shù),make_server函數(shù)報(bào)錯(cuò)的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-11-11
  • python ctypes庫2_指定參數(shù)類型和返回類型詳解

    python ctypes庫2_指定參數(shù)類型和返回類型詳解

    今天小編就為大家分享一篇python ctypes庫2_指定參數(shù)類型和返回類型詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • python中進(jìn)程間通信詳細(xì)介紹

    python中進(jìn)程間通信詳細(xì)介紹

    大家好,本篇文章主要講的是python中進(jìn)程間通信詳細(xì)介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Python中Timedelta轉(zhuǎn)換為Int或Float方式

    Python中Timedelta轉(zhuǎn)換為Int或Float方式

    這篇文章主要介紹了Python中Timedelta轉(zhuǎn)換為Int或Float方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Jupyter Notebook 文件默認(rèn)目錄的查看以及更改步驟

    Jupyter Notebook 文件默認(rèn)目錄的查看以及更改步驟

    這篇文章主要介紹了Jupyter Notebook 文件默認(rèn)目錄的查看以及更改步驟,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python中match語句的詳細(xì)用法實(shí)例

    Python中match語句的詳細(xì)用法實(shí)例

    match語句接受一個(gè)表達(dá)式并將其值與作為一個(gè)或多個(gè)?case?塊給出的連續(xù)模式進(jìn)行比較,下面這篇文章主要給大家介紹了關(guān)于Python中match語句的詳細(xì)用法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11

最新評論