如何从两个元组列表中添加元组以获取新的结果列表?
例如:
a = [(1,1),(2,2),(3,3)]
b = [(1,1),(2,2),(3,3)]
我们想要
c = [(2,2),(4,4),(6,6)]
我搜索了谷歌并发现了很多结果如何使用zip简单地添加两个列表,但找不到关于两个元组列表的任何内容。
答案 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)]