一、enumerate( )函数说明
1.enumerate()是python的内置函数
2.enumerate在字典上是枚举、列举的意思
3.对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。(即可以将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标。)
4.enumerate多用于在for循环中得到计数
二、语法
enumerate(sequence, [start=0])
sequence:一个序列、迭代器或其他支持迭代对象。
start:下标起始位置
三、实例
实例1
list1=['Lady','Man','Girl','Boy']
list(enumerate(list1))
返回:
[(0, 'Lady'), (1, 'Man'), (2, 'Girl'), (3, 'Boy')]
实例2
添加默认参数,从1开始。
list1=['Lady','Man','Girl','Boy']
list(enumerate(list1,1))
返回:
[(1, 'Lady'), (2, 'Man'), (3, 'Girl'), (4, 'Boy')]
实例3
#字符串
a='abcde'
print(list(enumerate(a)))
#元组
tup=('A','B','C','D')
print(list(enumerate(tup,1)))
#字典(遍历key,而不是value)
dict={'A':2,'B':4,'C':8}
print(list(enumerate(dict,1)))
可以用于遍历字符串、列表、元组和字典等。
四、用于for循环
#普通的for循环
i = 0
seq = ['one', 'two', 'three']
for element in seq:
print i, seq[i]
i +=1
#enumerate( )
seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
print i, element
五、统计文本的行数
#常规方法
count = len(open(r"D:\\test.txt").readlines())
#使用enumerate( )
for index,line in enumerate(open(r"D:\\1.txt"), start=1):
pass