Python中enumerate()函數(shù)編寫更Pythonic的循環(huán)
enumerate函數(shù)
enumerate是一個(gè)Python內(nèi)置函數(shù),一個(gè)功能強(qiáng)大的內(nèi)置函數(shù)。其實(shí)功能強(qiáng)大不足以形容它, 但是很難用一個(gè)詞來形容它的用途。
讓我們來看看一個(gè)使用enumerate進(jìn)行循環(huán)的例子
names = ['李四', '張三', '王二'] for index, name in enumerate(names): print(f'{index}: {value}')
下面是這個(gè)循環(huán)的結(jié)果
0: 李四
1: 張三
2: 王二
這通常是一個(gè)很有用的方式去循環(huán),但很多初學(xué)者甚至中級(jí)開發(fā)人員都不知道這一點(diǎn)。通常來說,他們的代碼會(huì)這樣寫(需要注意的是,這是一種不好的寫法)
names = ['李四', '張三', '王二'] for i in range(len(names)): print(i, my_items[i])
另外一點(diǎn)是,我們可以指定循環(huán)的索引,例如
names = ['李四', '張三', '王二'] for index, name in enumerate(names, 1): print(f'{index}: {value}')
結(jié)果如下
1: 李四
2: 張三
3: 王二
關(guān)于enumerate的另一個(gè)重要的知識(shí)點(diǎn)是,他的內(nèi)部實(shí)現(xiàn)使用的是迭代器,所以當(dāng)需要循環(huán)的對(duì)象特別大的時(shí)候我們不用浪費(fèi)許多資源去全部展開。
相關(guān)文章
python3.6使用SMTP協(xié)議發(fā)送郵件
這篇文章主要為大家詳細(xì)介紹了python3.6使用SMTP協(xié)議發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-05-05使用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的項(xiàng)目監(jiān)控
這篇文章主要介紹了使用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的項(xiàng)目監(jiān)控,包括連接數(shù)據(jù)庫進(jìn)行查詢等操作,需要的朋友可以參考下2015-03-03python中如何實(shí)現(xiàn)鏈?zhǔn)秸{(diào)用
這篇文章主要介紹了python中如何實(shí)現(xiàn)鏈?zhǔn)秸{(diào)用,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-03-03python統(tǒng)計(jì)RGB圖片某像素的個(gè)數(shù)案例
這篇文章主要介紹了python統(tǒng)計(jì)RGB圖片某像素的個(gè)數(shù)案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03