假设我有两个列表:L1 = [1,2,3] 和 L2 = [a,b,c],最快的方法是如何将它们转换为列表 M = [(1,a),(2,b),(3,c)]?我尝试过 M = [(x,y) for x in L1 for y in L2],但这给出了所有可能的元素组合。我当然可以编写循环来实现,但是否有更加Pythonic的方法呢?
使用zip()函数。 该函数返回一个元组的列表,其中第i个元组包含来自每个参数序列或可迭代对象的第i个元素。返回的列表被截断为最短参数序列的长度。 >> zip([1, 2, 3], ['a', 'b', 'c']) [(1, 'a'), (2, 'b'), (3, 'c')]