如何+两个元组列表中的值

Ano*_*ity 6 python tuples list

如何从两个元组列表中添加元组以获取结果的新列表?

例如:

a = [(1,1),(2,2),(3,3)]   
b = [(1,1),(2,2),(3,3)]   
Run Code Online (Sandbox Code Playgroud)

我们想得到

c = [(2,2),(4,4),(6,6)]  
Run Code Online (Sandbox Code Playgroud)

我搜索谷歌并发现许多结果如何使用zip简单地添加两个列表,但找不到有关两个元组列表的任何内容.

Ash*_*ary 6

使用zip两次和列表理解:

In [63]: a = [(1,1),(2,2),(3,3)]

In [64]: b = [(1,1),(2,2),(3,3)]

In [66]: [tuple(map(sum, zip(x, y))) for x, y in zip(a, b)]
Out[66]: [(2, 2), (4, 4), (6, 6)]
Run Code Online (Sandbox Code Playgroud)

  • 如果您不知道每个元组中有多少元素,这是解决问题的好方法.+1 (4认同)

Nol*_*lty 5

>>> a = [(1,1),(2,2),(3,3)]
>>> b = [(1,1),(2,2),(3,3)]
>>> [(i[0]+j[0], i[1]+j[1]) for i, j in zip(a,b)]
[(2, 2), (4, 4), (6, 6)]
Run Code Online (Sandbox Code Playgroud)