本函数是把可迭代对象转换为枚举对象。iterable是可迭代参数,比如像列表、数组、字典等对象;start是枚举的起始值,默认是从0开始。这个函数实现原理是这样,从迭代对象的方法__next__()取得一项值,然后就对参数start开始计数,每取一项增加1,生成一个元组返回。
本函数实现原理,大体上可以用下面的代码来表示:
def enumerate(sequence, start=0):
n = start
for elem in sequence:
yield n, elem
n += 1
简单来说是用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
语法:
enumerate(sequence, start=0)
参数含义:
sequence:列表、元组或字符串
start:开始计数的初始下标
- enumerate()用于for循环
seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
print(i, element)
# 运行结果如下
# 0 one
# 1 two
# 2 three