关于python:如何检查元素在列表中存在的次数

How to check how many times an element exists in a list

本问题已经有最佳答案,请猛点这里访问。

我有一个这样的清单:[5,6,7,2,4,8,5,2,3]

我想检查这个列表中每个元素存在的次数。

在Python中,最好的方法是什么?


您可以使用Collections.Counter

1
2
3
>>> from collections import Counter
>>> Counter([5,6,7,2,4,8,5,2,3])
Counter({2: 2, 5: 2, 3: 1, 4: 1, 6: 1, 7: 1, 8: 1}

count()方法计算对象出现在列表中的次数:

1
2
a = [5,6,7,2,4,8,5,2,3]
print a.count(5)  # prints 2

但是,如果您对列表中每个对象的总数感兴趣,可以使用以下代码:

1
2
3
4
counts = {}
for n in a:
    counts[n] = counts.get(n, 0) + 1
print counts