在python中使用两个元组之间的区别是什么

时间:2016-02-07 20:17:41

标签: python python-2.7 tuples

我正在寻找正确的方法来区分2个元组。例如:

a = (1, 2, 3)
b = (1, 0, 2)

预期差异

(0, 2, 1)

我知道我可以迭代两个元组创建一个新的元组,然后做差异,但我正在寻找更传统或正确的东西。

3 个答案:

答案 0 :(得分:3)

您可以在内置zip的帮助下,在同一次迭代中访问这两个索引。之后,您只需将生成器表达式提供给tuple即可创建新的元组对象。

diff = tuple(x-y for x,y in zip(a,b))

答案 1 :(得分:2)

你可以zip元素两个元组,然后你可以在生成器表达式中减去每一对

>>> a = (1, 2, 3)
>>> b = (1, 0, 2)
>>> tuple(i-j for i,j in zip(a,b))
(0, 2, 1)

答案 2 :(得分:2)

from operator import sub
a = (1, 2, 3)
b = (1, 0, 2)
tuple(map(sub, a, b))
  

(0,2,1)