按元素索引创建子列表中的列表

时间:2015-12-07 00:50:36

标签: python python-3.x

我有这个列表与子列表,我希望创建两个列表beacuse每个子列表的长度为2.第一个子列表包含每个子列表的每个第一个元素,第二个子列表包含每个子列表的第二个元素。

例如,假设这是输入:

col=[[' ', 2], [1, 2], [' ', 2], [' ', 3], [' ', 3]]

我想要一个这样的列表:

col= [[' ', 1, ' ', ' ', ' '],[2 ,1, 2, 3, 3]]

我试过了:

for i in range(len(col)-1):
      col[i][0]= col[i][0] + col[i+1][0]

问题在于,即使这样做,它也只适用于包含len 2的子列表的列表,但我需要一些适用于任何子列表的len的东西。例如,如果我有:

ss= [[2,4,5,2],[5,6,7,6],[4,8,9,4]]

我会得到:

ss=[[2,5,4],[4,6,8],[5,7,9],[2,6,4]]

1 个答案:

答案 0 :(得分:3)

尝试使用zip

>>> print zip(*ss)
[(2, 5, 4), (4, 6, 8), (5, 7, 9), (2, 6, 4)]