python中enumerate函數(shù)用法實(shí)例分析
本文實(shí)例講述了python中enumerate函數(shù)用法。分享給大家供大家參考。具體分析如下:
今日發(fā)現(xiàn)一個(gè)新函數(shù) enumerate 。一般情況下對(duì)一個(gè)列表或數(shù)組既要遍歷索引又要遍歷元素時(shí),會(huì)這樣寫(xiě):
for i in range (0,len(list)): print i ,list[i]
但是這種方法有些累贅,使用內(nèi)置enumerrate函數(shù)會(huì)有更加直接,優(yōu)美的做法,先看看enumerate的定義:
def enumerate(collection): 'Generates an indexed series: (0,coll[0]), (1,coll[1]) ...' i = 0 it = iter(collection) while 1: yield (i, it.next()) i += 1
enumerate會(huì)將數(shù)組或列表組成一個(gè)索引序列。使我們?cè)佾@取索引和索引內(nèi)容的時(shí)候更加方便如下:
for index,text in enumerate(list)): print index ,text
在cookbook里介紹,如果你要計(jì)算文件的行數(shù),可以這樣寫(xiě):
count = len(open(thefilepath,'rU').readlines())
前面這種方法簡(jiǎn)單,但是可能比較慢,當(dāng)文件比較大時(shí)甚至不能工作,下面這種循環(huán)讀取的方法更合適些。
Count = -1 For count,line in enumerate(open(thefilepath,'rU')): Pass Count += 1
希望本文所述對(duì)大家的python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python2.7+pytesser實(shí)現(xiàn)簡(jiǎn)單驗(yàn)證碼的識(shí)別方法
這篇文章主要介紹了Python2.7+pytesser實(shí)現(xiàn)簡(jiǎn)單驗(yàn)證碼的識(shí)別方法,簡(jiǎn)單分析了pytesser的安裝及Python2.7環(huán)境下實(shí)現(xiàn)驗(yàn)證碼識(shí)別的相關(guān)操作技巧,需要的朋友可以參考下2017-12-12Python實(shí)現(xiàn)兩個(gè)list對(duì)應(yīng)元素相減操作示例
這篇文章主要介紹了Python實(shí)現(xiàn)兩個(gè)list對(duì)應(yīng)元素相減操作,結(jié)合具體實(shí)例形式分析了list對(duì)應(yīng)元素操作的簡(jiǎn)單實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-06-06詳解Python中Pytest和Unittest的區(qū)別
Pytest?和?Unittest是Python中屬于最常用的兩個(gè)測(cè)試框架。那么他們有些什么區(qū)別呢??Playwright?為什么只給了Pytest的深度支持,而不是Unittest呢?本文就來(lái)和大家詳細(xì)聊聊2023-03-03pandas數(shù)據(jù)探索之合并數(shù)據(jù)示例詳解
這篇文章主要為大家介紹了pandas數(shù)據(jù)探索之合并數(shù)據(jù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10