在Python中拆分列表

时间:2015-03-03 16:22:39

标签: python-2.7

如何根据每5个数字将列表拆分为2个单独的列表。这就是我试图让它看起来像。

    list = [a,a,a,a,a,b,b,b,b,b,c,c,c,c,c,d,d,d,d,d]

    newlista = [a,a,a,a,a,c,c,c,c,c]
    newlistb = [b,b,b,b,b,d,d,d,d,d]

我一直在看itertools,不确定我是否在正确的道路上。

1 个答案:

答案 0 :(得分:0)

您可以使用列表理解和切片执行此操作:

In [1]: a, b, c, d, = 1, 2, 3, 4
In [2]: l = [a,a,a,a,a,b,b,b,b,b,c,c,c,c,c,d,d,d,d,d]
In [3]: [l[i:i+5] for i in range(0,15,10)]
Out[3]: [[1, 1, 1, 1, 1], [3, 3, 3, 3, 3]]
In [4]: [l[i:i+5] for i in range(5,20,10)]
Out[4]: [[2, 2, 2, 2, 2], [4, 4, 4, 4, 4]]