python-3.x - 批量迭代python列表的最简单方法
问题描述
假设我有一个如下所示的数据结构:
entries = [{"name": "some_name", "age": "some_age"...}, {"name": "some_other_name", "age": "some_other_age"}, ...]
我想分批迭代 10 次,但这不起作用:
x = zip(*[iter(entries)]*10)
>>> x
<zip object at 0x1103db730>
>>> list(x)
[]
我想要的是最终得到一个长度为 10 的数组,但我什么也没得到。最后一个数组的元素可能少于 10 个。我能做些什么?
解决方案
这个怎么样?
chunks = [data[i:i+chunk_size] for i in range(0,len(data),chunk_size)]