python获取list下标及其值的简单方法

当在python中遍历一个序列时,我们通常采用如下的方法:

for item in sequence:
    process(item)

如果要取到某个item的位置,可以这样写:

for index in range(len(sequence)):
    process(sequence[index])

另一个比较好的方式是使用python内建的enumerate函数:

enumerate(sequence,start=0)

上述函数中,sequence是一个可迭代的对象,可以是列表,字典,文件对象等等。enumerate返回的是下标和item组成的元组:

>>> 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')]

文章最开始的例子于是可以写写成这样:

for index,item in enumerate(sequence):
    print index,item

相关推荐