通过交错连接两个列表

时间:2011-04-02 00:45:26

标签: python

我有一个通过解析一些文本创建的列表。 假设列表看起来像

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

我想采取以下清单

numlist = [3, 2, 1]

并将它们连接在一起,以便我的组合列表看起来像

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

有一个简单的方法吗?

5 个答案:

答案 0 :(得分:9)

如果您想要列表而不是可以使用的元组列表:

map(list,zip(charlist,numlist))

答案 1 :(得分:7)

zip内置函数应该可以解决问题。

文档示例:

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

答案 2 :(得分: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]]

答案 3 :(得分:1)

p=[] 
for i in range(len(charlist)): 
    p.append([charlist[i],numlist[i]])

答案 4 :(得分:1)

您可以尝试以下方法,但我相信会有更好的方法:

l1 = ['a', 'b', 'c']
l2 = [1, 2, 3]    
l = []
for i in 1:length(l1):
    l.append([l1[i], l2[i]])

一切顺利。

相关问题