python统计列表中各个元素出现的次数
时间: 2023-11-17 20:05:41 浏览: 75
python 统计一个列表当中的每一个元素出现了多少次的方法
5星 · 资源好评率100%
可以使用 python 内置的 `collections` 模块中的 `Counter` 类来统计列表中各个元素出现的次数。举个例子:
```
from collections import Counter
my_list = [1, 2, 3, 2, 1, 3, 1, 2, 3]
counts = Counter(my_list)
print(counts)
```
输出:
```
Counter({1: 3, 2: 3, 3: 3})
```
可以看到,它会将元素和出现次数封装为一个字典返回。
也可以统计其他类型的数据,例如字符串
```
string = 'hello world'
counts = Counter(string)
print(counts)
```
输出
```
Counter({'l': 3, 'o': 2, 'h': 1, 'e': 1, ' ': 1, 'w': 1, 'r': 1, 'd': 1})
```
如果要获取每个元素出现次数最多的 n 个元素,可以使用 `most_common()` 方法,例如:
```
counts.most_common(2)
```
输出:
```
[(1, 3), (2, 3)]
```
需要注意的是,如果数据量很大,那么在统计前先排序是更加高效的。
如果你的数据类型比较特殊,那么需要额外考虑使用hash_map或者hash_set之类的数据结构。
阅读全文