问题描述
您的问题有点含糊,但请查看文档中的grouper
食谱itertools
。
def grouper(n, iterable, fillvalue=None):
"grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx"
args = [iter(iterable)] * n
return izip_longest(fillvalue=fillvalue, *args)
(用相同的迭代器多次压缩[iter(iterable)]*n
是一个古老的技巧,但是将其封装在此函数中可以避免混淆代码,并且它是许多人将使用的相同的确切形式和接口。这是一个普遍的需求,有点可惜了。实际上不在itertools
模块中。)
解决方法
如何从可迭代对象一次生成多个项目?
例如,对于任意长度的序列,我如何在每次迭代X个连续项目的组中迭代序列中的项目?