2010-02-10 25 views
4

可能重复:
splitting a list of arbitrary size into only roughly N-equal parts
How do you split a list into evenly sized chunks in Python?如何将列表分成子列表的给定数量的蟒蛇

我需要创建一个将分裂列表的功能列入一个列表,每个列表包含相同数量的项目(或尽可能相等)。

例如

def split_lists(mainlist, splitcount): 
    .... 


mylist = [1,2,3,4,5,6] 

split_list(mylist,2)将返回三个元素的两个列表的列表 - [[1,2,3][4,5,6]]

​​将返回两个元素的三个列表的列表。

split_list(mylist,4)将返回两个元素的列表和一个元素的两个列表的列表。

我不在乎哪些元素出现在哪个列表中,只是列表尽可能均匀分开。

+2

我认为这很面熟:http://stackoverflow.com/questions/2130016/splitting-a-list-of-arbitrary -size-into-only-approximate-n-equal-parts – 2010-02-10 09:03:41

+0

使用zip和iter()的这个问题及其伴侣“聪明的回答”在过去的48小时中出现了大约5次。搜索是你的朋友。 – drxzcl 2010-02-10 09:04:35

+0

搜索“python list chunks”,你会发现你的答案...投票结束为重复 – fortran 2010-02-10 09:09:52

回答