gpt4 book ai didi

python - 使用迭代器实现 Chop()

转载 作者:行者123 更新时间:2023-12-01 06:16:24 27 4
gpt4 key购买 nike

当前版本:

def chop(ar,size):
p=len(ar)/size
for i in xrange(p):
yield ar[(i*size):((i+1)*size)]

ar 是 list() 的类型。

我想要的是 Chop() 接受迭代器并返回迭代器。

for i in chop(xrange(9),3):
for j in i:
print j,
print

打印

0 1 2
3 4 5
6 7 8

最佳答案

itertools documentation中有一个实现:

def grouper(n, iterable, fillvalue=None):
"grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx"
args = [iter(iterable)] * n
return izip_longest(fillvalue=fillvalue, *args)

关于python - 使用迭代器实现 Chop(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3143371/

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