[英]How to count the difference between two nested lists in 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相同,依此類推。
您可以使用zip
函數和sum
函數中的生成器表達式:
count=sum(i!=j for i,j in zip(list1,list2))
另一種方法是
x = [("a", 1) ,("b", 2), ("c", 7), ("d", 1)]
y = [("a", 3), ("b", 2), ("c", 7), ("d", 8)]
count = len(set(x).intersection(y))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.