通过交错合并两个列表
我有一个列表,是通过解析一些文本生成的。假设这个列表看起来像这样:
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)]