原文:https://mp.weixin.qq.com/s/Jm7YiCA20RDSTrF4dHeykQ
如何以去写以及为什么你应该使用Python中的内置枚举函数来编写更干净更加Pythonic的循环语句?
Python的 enumerate函数是一个神话般的存在,以至于它很难用一句话去总结它的目的和用处。
但是,它是一个非常有用的函数,许多初学者,甚至中级Pythonistas是并没有真正意识到。简单来说, enumerate()是用来遍历一个可迭代容器中的元素,同时通过一个计数器变量记录当前元素所对应的索引值。
让我们来看一个示例:
names =['Bob','Alice','Guido']
forindex,value inenumerate(names):
print(f'{index}: {value}')
这段代码会输入如下内容:
正如你所看到的,这个循环遍历了 names列表的所有元素,并通过增加从零开始的计数器变量来为每个元素生成索引。
[如果您想知道上面例子中使用的f'...'字符串语法,这是Python 3.6及更高版本中提供的一种新的字符串格式化技巧。]
用 enumerate()让你的循环更加Pythonic
那么为什么用 enumerate()函数去保存运行中的索引很有用呢?