对于一个 Python 开发者来说, Python 里面的 for 循环是很熟悉的,虽然没有其它语言里类似于
for (i=0; i<ln; i++)
的这种操作,但是对于列表的循环有一种比较好用的方式,那就是:
for item in List:
print(item)
这种方法可以直接循环取出列表的每一个元素,但是会有一个缺点,就是虽然取出了元素,但是不知道取出的元素所对应的下标是多少。
如果要取出元素,同时知道对应的下标,该怎么做呢?
可以使用如下方法:
for i in range(len(List)):
print(i, List[i])
这种方法可以得到我们想要的结果,但是其实 Python 里面还有一个函数,也可以实现这个功能,那就是我们标题里面的 enumerate,这个单词的意思是枚举。
使用方法如下:
for i, item in enumerate(List):
print(i, item)
如下是使用的示例:
补充
之前写完 enumerate,后来看了 Python cookbook,发现 enumerate 还可以带一个参数,之前在使用的过程当中,下标 index 默认是从 0,如果我们要从 1 ,或者其他的 index 开始,可以设置一个初始参数,如下:
items = ['a', 'b', 'c', 'd']
start = 1
for i, item in enumerate(items, start):
print(i, item)
1 a
2 b
3 c
4 d