通过交错合并两个列表

4 投票
5 回答
2355 浏览
提问于 2025-04-16 14:55

我有一个列表,是通过解析一些文本生成的。假设这个列表看起来像这样:

charlist = ['a', 'b', 'c']

我想把下面这个列表

numlist = [3, 2, 1]

合并在一起,让我的合并后的列表看起来像这样:

[['a', 3], ['b', 2], ['c', 1]]

有没有简单的方法可以做到这一点呢?

5 个回答

2

这里还有一种简单的方法来实现这个。

charlist = ['a', 'b', 'c']
numlist = [3, 2, 1]
newlist = []

for key, a in enumerate(charlist):
    newlist.append([a,numlist[key]])

新列表的内容是:[['a', 3], ['b', 2], ['c', 1]]

9

如果你想要的是一个列表里面包含多个列表,而不是一个列表里面包含多个元组,你可以使用:

map(list,zip(charlist,numlist))
7

内置的 zip 函数可以解决这个问题。

下面是文档中的一个例子:

>>> x = [1, 2, 3]
>>> y = [4, 5, 6]
>>> zipped = zip(x, y)
>>> zipped
[(1, 4), (2, 5), (3, 6)]

撰写回答