【发布时间】:2010-07-06 06:14:17
【问题描述】:
可能重复:
How do you split a list into evenly sized chunks in Python?
你好,
我正在尝试找到一种更简单的方法来执行以下操作:
def list_split(list, size):
result = [[]]
while len(list) > 0:
if len(result[-1]) >= size: result.append([])
result[-1].append(list.pop(0))
return result
示例用法:
>>> list_split([0, 1, 2, 3, 4, 5, 6], 2)
[[0, 1], [2, 3], [4, 5], [6]]
>>> list_split([0, 1, 2, 3, 4, 5, 6], 3)
[[0, 1, 2], [3, 4, 5], [6]]
我不知道是否有内置的方法可以做到这一点,可能是切片或其他方法。
这与How to split a list into a given number of sub-lists in python的帖子相似但不一样
谢谢
编辑: 正如 Anurag Uniyal 所评论的,这是 How do you split a list into evenly sized chunks? 的副本,应该关闭,我不能这样做。
【问题讨论】:
-
为什么其他看似重复的问题与您的问题不相似?
-
对不起,当我在搜索它时,我不太确定它可以叫什么