【发布时间】:2021-01-28 02:32:16
【问题描述】:
有两个列表,我想检查有多少元素是重复的。假设列表一是l1 = ['a', 'b', 'c', 'd', 'e'],列表二是l2 = ['a', 'f', 'c', 'g']。由于a 和c 在两个列表中,因此,输出应该是2,这意味着两个列表中有两个元素重复。下面是我的代码,我想计算计数器中有多少 2。我不知道如何计算。
l1 = ['a', 'b', 'c', 'd', 'e']
l2 = ['a', 'f', 'c', 'g']
from collections import Counter
c1 = Counter(l1)
c2 = Counter(l2)
sum = c1+c2
z=sum.count(2)
【问题讨论】:
-
错误说明了一切。
sum.count()不是一回事。您将需要找到解决问题的不同方法。 -
问题...每个元素在每个列表中只出现一次吗?
-
official docs 没有任何用于 Counter 对象的
count方法,您以完全不同的方式获得计数。为什么你认为count()会起作用?您希望它返回哪个项目的计数? -
@Code-Apprentice 是的,每个列表只出现一次。
-
@Bob 然后使用
set,如下面的答案所示,而不是Counter。
标签: python list collections counter