如何在Python上比较数字并找出一个列表中匹配了多少数字?

如何在Python上比较数字并找出一个列表中匹配了多少数字?,python,list,Python,List,我有一份清单: a = [3, 4, 5, 2, 3] 如何获取此列表中匹配的数字数量?我猜您希望找到列表中有多少重复的数字 listItem = [3, 4, 5, 2, 3] s = set([x for x in listItem if listItem.count(x) > 1]) # -> {3} n_duplicates = len(s) # -> 1 下面是准备特殊字典的方法{值:多少次匹配} cnt = {k:listItem.count(k) for

我有一份清单:

a = [3, 4, 5, 2, 3]

如何获取此列表中匹配的数字数量?

我猜您希望找到列表中有多少重复的数字

listItem = [3, 4, 5, 2, 3]
s = set([x for x in listItem if listItem.count(x) > 1])  # -> {3}
n_duplicates = len(s)  # -> 1

下面是准备特殊字典的方法{值:多少次匹配}

 cnt = {k:listItem.count(k) for k in set(listItem)}

 Out[1]:
      {2: 1, 3: 2, 4: 1, 5: 1}


 mtch = {k:v for k,v in cnt.items() if v>1}

 Out[2]:
      {3: 2}
如果你知道确切的数字
我不知道你的比赛结果如何。但是要严格地得到你在评论中列出的答案,这是最简单的方法。查看其他答案,因为它们可能更有用,这取决于您将如何处理匹配信息

a=[3,4,5,2,3]
如果a.count(x)>1,则a_与_匹配=[x代表a中的x]
len(a_与_匹配)
#产出:
2.

你好Jay,欢迎。当你说“匹配了多少个数字”时,你的意思是仅仅在列表本身中,还是在其他输入中。那么,在上述情况下,您的预期输出是什么?还有,你试过代码了吗?嗨,维德!我对python和stackoverflow也很陌生:)。在这个列表中,[0]和[4]是相同的数字,所以我想要结果数字2,因为两个值是匹配的。谢谢
 listItem.count(3)

 Out[3]:
 2