【发布时间】:2011-11-10 21:45:09
【问题描述】:
我有两个列表:
x = ['1', '2', '3']
y = ['a', 'b', 'c']
我需要从这些列表中创建一个元组列表,如下所示:
z = [('1','a'), ('2','b'), ('3','c')]
我试过这样做:
z = [ (a,b) for a in x for b in y ]
但导致:
[('1', '1'), ('1', '2'), ('1', '3'), ('2', '1'), ('2', '2'), ('2', '3'), ('3', '1'), ('3', '2'), ('3', '3')]
即x 中的每个元素与 y 中的每个元素的元组列表......做我想做的事情的正确方法是什么?谢谢...
编辑:编辑之前提到的另外两个重复是我的错,错误地缩进了另一个for循环......
【问题讨论】:
-
这个问题已经被问过了:stackoverflow.com/questions/2407398/…
-
Mea Culpa,在搜索中找不到,谢谢 :)