Is there an elegant way to cycle through a list N times via iteration (like itertools.cycle but limit the cycles)?(有没有一种优雅的方法可以通过迭代循环遍历列表 N 次(如 itertools.cycle 但限制循环)?)
问题描述
我想通过一个迭代器反复(N 次)循环遍历一个列表,以免在内存中实际存储 N 个列表副本.有没有一种内置的或优雅的方法可以在不编写我自己的生成器的情况下做到这一点?
I'd like to cycle through a list repeatedly (N times) via an iterator, so as not to actually store N copies of the list in memory. Is there a built-in or elegant way to do this without writing my own generator?
理想情况下, itertools.cycle(my_list) 会有第二个参数来限制它循环的次数......唉,没有这样的运气.
Ideally, itertools.cycle(my_list) would have a second argument to limit how many times it cycles... alas, no such luck.
推荐答案
import itertools
itertools.chain.from_iterable(itertools.repeat([1, 2, 3], 5))
Itertools 是一个很棒的库.:)
Itertools is a wonderful library. :)
这篇关于有没有一种优雅的方法可以通过迭代循环遍历列表 N 次(如 itertools.cycle 但限制循环)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:有没有一种优雅的方法可以通过迭代循环遍历列
基础教程推荐
- Plotly:如何设置绘图图形的样式,使其不显示缺失日期的间隙? 2022-01-01
- 无法导入 Pytorch [WinError 126] 找不到指定的模块 2022-01-01
- 在同一图形上绘制Bokeh的烛台和音量条 2022-01-01
- PermissionError: pip 从 8.1.1 升级到 8.1.2 2022-01-01
- 包装空间模型 2022-01-01
- 使用大型矩阵时禁止 Pycharm 输出中的自动换行符 2022-01-01
- 修改列表中的数据帧不起作用 2022-01-01
- PANDA VALUE_COUNTS包含GROUP BY之前的所有值 2022-01-01
- 在Python中从Azure BLOB存储中读取文件 2022-01-01
- 求两个直方图的卷积 2022-01-01
