我已经多次遇到这个问题,我找不到一个好的解决方案来将两个元组的内容加在一起。做的事情:
a = (1, 2)
b = (3, 4)
c = (a[0]+b[0], a[1]+b[1])
我想我看到了一种只做一次的语法,但我不记得该怎么做。
这也有效:
>>> a = (1,2)
>>> b = (3,4)
>>> c = map(sum, zip(a,b))
>>> c
[4, 6]
它应该适用于包含任意数量数字的任意数量的列表。
一个班轮:
map(lambda x, y: x+ y, a, b)
我相信这是最有效的方法。您还可以导入operator.add
以避免 lambda 函数。对我来说,我更喜欢更干净的全局命名空间。
使用生成器理解:
a = (1, 2)
b = (3, 4)
result = [x + y for x, y in zip(a, b)]
[4, 6]