• enumerate 函数可以用简洁的代码迭代 iterator,而且可以指出当前这轮循环的序号。
  • 不要先通过 range 指定下标的取值范围,然后用下标去访问序列,而是应该直接用 enumerate 函数迭代。
  • 可以通过 enumerate 的第二个参数指定起始序号(默认为 0)。

    迭代器 + enumerate

    1. flavor_list = ['vanilla', 'chocolate', 'pecan', 'strawberry']
    2. it = enumerate(flavor_list)
    3. print(next(it))
    4. print(next(it))
    image.png

    range

    1. flavor_list = ['vanilla', 'chocolate', 'pecan', 'strawberry']
    2. for i in range(len(flavor_list)):
    3. flavor = flavor_list[i]
    4. print(f'{i + 1}: {flavor}')
    image.png

    enumerate + index

    1. for i, flavor in enumerate(flavor_list, 1):
    2. print(f'{i}: {flavor}')
    image.png