python:从列表创建元组列表

发布于 2021-01-29 15:08:57

这个问题已经在这里有了答案

9年前关闭。

我有两个清单:

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循环中是错误的…

关注者
0
被浏览
54
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    使用内置函数zip()

    在Python 3中:

    z = list(zip(x,y))
    

    在Python 2中:

    z = zip(x,y)
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看