如果我有以下两个带有(x,y)形式的元组的列表:
[(a,1),(b,2),(c,7),(d,1)]
[(a,3),(b,2),(c,7),(d,8)]
我想计算相应'x'值的'y'值的差异数。在上面的例子中,答案是2
(a, 1 )与(a, 3 )
不匹配(d, 1 )与(d, 8 )
不匹配编辑:这不是重复,元素的位置很重要。我想检查列表1中的元素1是否与列表2中的元素1相同,依此类推。
答案 0 :(得分:2)
您可以在zip
函数中使用sum
函数和生成器表达式:
count=sum(i!=j for i,j in zip(list1,list2))
答案 1 :(得分:0)
另一种方法是
x = [("a", 1) ,("b", 2), ("c", 7), ("d", 1)]
y = [("a", 3), ("b", 2), ("c", 7), ("d", 8)]
count = len(set(x).intersection(y))