更改数据结构

时间:2017-04-25 10:36:18

标签: python

我有两个相同大小的列表。我想创建一个新列表,它们两者的组合(列表列表)的方式是具有相同索引的元素将在列表中,并且此列表将具有相同的索引。

输入示例:

a = [1, 2, 3]
b = [4, 5, 6]

combined = [[1, 4], [2, 5], [3, 6]]
你知道怎么做吗?

6 个答案:

答案 0 :(得分:1)

使用built-in zip

>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> zip(a, b)
[(1, 4), (2, 5), (3, 6)]

答案 1 :(得分:1)

这会为您提供清单。

combined = [[i,k] for i,k in zip(a,b)]

答案 2 :(得分:1)

使用zip

>>> list(zip(a,b))
[(1, 4), (2, 5), (3, 6)]

或者你想要列表而不是元组:

>>> [[x,y] for x,y in zip(a,b)]
[[1, 4], [2, 5], [3, 6]]

答案 3 :(得分:1)

这将为您提供元组列表

combined = list(zip(a, b))

如果你真的需要你的元素作为列表,那么我们可以写

combined = list(map(list, zip(a, b)))

答案 4 :(得分:0)

你可以压缩它们:

list(zip(a, b))

答案 5 :(得分:0)

a = [1, 2, 3]
b = [4, 5, 6]

combined = list(zip(a,b))

for i in combined:
    print(i)

使用zip命令组合列表。