本文实例讲述了python中enumerate函数用法。分享给大家供大家参考。具体分析如下:
今日发现一个新函数 enumerate 。一般情况下对一个列表或数组既要遍历索引又要遍历元素时,会这样写:
1
2
|
for i in range ( 0 , len ( list )): print i , list [i] |
但是这种方法有些累赘,使用内置enumerrate函数会有更加直接,优美的做法,先看看enumerate的定义:
1
2
3
4
5
6
7
|
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会将数组或列表组成一个索引序列。使我们再获取索引和索引内容的时候更加方便如下:
1
2
|
for index,text in enumerate ( list )): print index ,text |
在cookbook里介绍,如果你要计算文件的行数,可以这样写:
1
|
count = len ( open (thefilepath, 'rU' ).readlines()) |
前面这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作,下面这种循环读取的方法更合适些。
1
2
3
4
|
Count = - 1 For count,line in enumerate ( open (thefilepath, 'rU' )): Pass Count + = 1 |
希望本文所述对大家的python程序设计有所帮助。