>> f-6ren">
gpt4 book ai didi

python - `Itertools.cycle` : most pythonic way to take multiple steps?

转载 作者:行者123 更新时间:2023-11-30 22:42:54 25 4
gpt4 key购买 nike

我有一些列表,我想循环浏览它。问题是我对一次循环一个元素不感兴趣,但我想一次循环 n 个元素。

例如,如果我的列表是 l = ["a", "b", "c", "d"],那么我需要以下输出:

>>> from itertools import cycle
>>> gen = cycle(l)
>>> next(gen, 4) # I know this doesn't work -- take as pseudocode
d
>>> next(gen, 3)
c

我知道我可以通过以下方式完成此任务:

def generator_step(g, n):
for item in range(n):
next(g)
return item

最佳答案

您可以在调用 next 之前使用 itertools.islice 来推进循环对象:

from itertools import cycle, islice

c = cycle(l)
n = 4
print(next(islice(c, n-1, n)))
# d

关于python - `Itertools.cycle` : most pythonic way to take multiple steps?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41969517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com