gpt4 book ai didi

Python 相当于 Ruby 的 each_slice(count)

转载 作者:太空狗 更新时间:2023-10-29 21:30:03 26 4
gpt4 key购买 nike

Ruby 的 each_slice(count) 在 Python 中的等价物是什么?
我想为每次迭代从列表中获取 2 个元素。
[1,2,3,4,5,6] 我想在第一次迭代中处理 1,2 然后 3,4然后是 5,6
当然,有一种使用索引值的迂回方式。但是是否有直接的功能或某种方式可以直接执行此操作?

最佳答案

有一个recipe为此在 itertools documentation称为石斑鱼:

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

像这样使用:

>>> l = [1,2,3,4,5,6]
>>> for a,b in grouper(2, l):
>>> print a, b

1 2
3 4
5 6

关于Python 相当于 Ruby 的 each_slice(count),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3833589/

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