如何计算Python中两个嵌套列表之间的差异?

时间:2015-10-15 20:33:11

标签: python

如果我有以下两个带有(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相同,依此类推。

2 个答案:

答案 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))