到达终点后,如何恢复列表中的第一个元素



例如:

如果我正在通过python列表['a','b','c']迭代,我该如何回到元素'a'a"'c"?

如果您是要进行循环,例如列表在圆圈中,只需使用modulo操作员:

mylist = ["a", "b", "c"]
for i in range(n): # set n to desired value
    print(mylist[i % len(mylist)])

如果通过"返回元素'a'",您的意思是您要"循环"返回列表,然后您可以使用itertools.cycle

from itertools import cycle, islice
data = ["a", "b", "c"]
times_to_iterate = 4
infinite_data = cycle(data)
for element in islice(infinite_data, len(data) * times_to_iterate):
    print(element)

我使用了islice,因为它与内置的slice相同,但是对于迭代器而言,cycle否则将永远迭代。这将通过data迭代4次。

最新更新