【发布时间】:2020-11-30 17:57:01
【问题描述】:
假设我有一个元组列表a=[(0,1),(2,0),(1,4)],我想将每两个元组的唯一元素作为一个新元组返回。例如(0,1) 和(2,0) 返回(1,2)。还有(0,1) 和(1,4) 返回(0,4)。
因此,输出为unique=[(1,2),(0,4)]
我尝试了下面的代码,但似乎我的路径不正确:
from itertools import combinations
a=[(0,1),(2,0),(1,4)]
b=list(combinations(a,2))
def myComp(pair1, pair2):
if any(x == y for x, y in zip(pair1, pair2)):
return(pair1,pair2)
d=[]
for i in range(len(b)):
c=myComp(b[i][0],b[i][1])
d.append(c)
【问题讨论】:
-
您能否详细说明为什么 2 对会返回该特定对?是什么让事物与众不同?
-
我认为是因为对于两个给定的对@Ironkey,返回的对中的数字不会在任何地方重复
-
哦,我没看到,让我写一个答案!
-
因为例如成对的 (0,1) 和 (2,0),0 在它们中都是常见的。然后它应该返回不常见的元素,即 (1,2)。
-
哦,他在 cmets 中说过谢谢@Ironkey
标签: python list tuples comparison combinations