有没有办法在 Python 的 for 循环中访问迭代计数器?



有没有办法访问Python for循环中的迭代计数器?

我通常使用自己的变量,并在任何循环中增加它。有没有更像蟒蛇的方式?

使用enumerate:

sequence = [1, 45, 65, 7]
for i, val in enumerate(sequence):
    print i, val

输出:

0 1
1 45
2 65
3 7

您不仅可以使用enumerate内置,而且它还有一个鲜为人知的可选第二个参数,即起始值:

f = open(...)
for linenumber, line in enumerate(f, 1):
    # etc.

通过这种方式,您可以给元素一个更自然的编号,而不是第一个元素为零,然后在某个地方加1。

最新更新