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

时间:2013-04-28 19:17:15

标签: python list tuples

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

例如:

a = [(1,1),(2,2),(3,3)]   
b = [(1,1),(2,2),(3,3)]   

我们想要

c = [(2,2),(4,4),(6,6)]  

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

2 个答案:

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

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