List 迭代时使用索引
使用索引,标准(一般)的做法
array = [1, 2, 3, 4, 5]
for i in range(len(array)):
print(array[i],end=' ')
1 2 3 4 5
简单,干净的用法 ----使用enumerate
Return an enumerate object.
iterable must be a sequence, an iterator, or some other object which supports iteration
start:改变索引 初始化位置(以下有例子)
实例:
>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
>>> list(enumerate(seasons, start=1))
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
完整的用法:
array = [1, 2, 3, 4, 5] # or whatever
for i, e in enumerate(array):
print(i,e)
0 1
1 2
2 3
3 4
4 5
有start 用法:
for i, e in enumerate(array,start=2):
print(i,e)
2 1
3 2
4 3
5 4
6 5
Equivalent to:
def enumerate(sequence, start=0):
n = start
for elem in sequence:
yield n, elem
n += 1