Python 更改数据结构
我有两个相同大小的列表。我想创建一个新的列表,将这两个元素(列表列表)组合在一起,使具有相同索引的元素位于列表中,并且此列表具有相同的索引 输入示例:Python 更改数据结构,python,Python,我有两个相同大小的列表。我想创建一个新的列表,将这两个元素(列表列表)组合在一起,使具有相同索引的元素位于列表中,并且此列表具有相同的索引 输入示例: a = [1, 2, 3] b = [4, 5, 6] combined = [[1, 4], [2, 5], [3, 6]] 你知道怎么做吗?你可以把它们拉上拉链: 列表(zip(a,b))使用: 这将为您提供列表 combined = [[i,k] for i,k in zip(a,b)] 使用zip >>> list
a = [1, 2, 3]
b = [4, 5, 6]
combined = [[1, 4], [2, 5], [3, 6]]
你知道怎么做吗?你可以把它们拉上拉链:
列表(zip(a,b))
使用:
这将为您提供列表
combined = [[i,k] for i,k in zip(a,b)]
使用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]]
这将为您提供元组列表
combined = list(zip(a, b))
如果你真的需要你的元素是列表,那么我们可以写
combined = list(map(list, zip(a, b)))
使用zip命令组合这两个列表。对于Python3,这将返回如下内容:@Alexander您可以使用
list()
强制字符串表示。为了简化这里的内容,我省略了它。大多数Python3列表构造都返回生成器。有些人可能会认为列表
包装器是强制性的,否则它会产生一个
,这是一个延迟计算的iterable。只需编写列表(zip(a,b))
即可强制执行评估。
combined = [[i,k] for i,k in zip(a,b)]
a = [1, 2, 3]
b = [4, 5, 6]
combined = list(zip(a,b))
for i in combined:
print(i)