加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python 获得列表(list)中每个元素(重复项)出现次数的最快解决方

发布时间:2020-12-17 17:01:03 所属栏目:Python 来源:网络整理
导读:如何使用python快读统计列表中重复项出现的次数? 这个问题在实际应用场景中使用频率比较广泛。本文讲解一下常用的方法: 第一种使用标准库提供的collections: from?collections?import?Counterimport?numpynum=1000000lst?=?np.random.randint(num?/?10,?size

如何使用python快读统计列表中重复项出现的次数?

这个问题在实际应用场景中使用频率比较广泛。本文讲解一下常用的方法:

第一种使用标准库提供的collections:

from?collections?import?Counter
import?numpy
num=1000000
lst?=?np.random.randint(num?/?10,?size=num)
res?=?Counter(lst)????#?返回的值是字典格式如{'xx':8,'xxx':9}
Counter(words).most_common(4)????#?输出的是出现次数最后的数据如[('xxx',?8),?('xxx',?5),]

第二种使用numpy模块(更快)

import?numpy
num=1000000
lst?=?np.random.randint(num?/?10,?size=num)
dict(zip(*np.unique(lst,?return_counts=True)))

第三种使用list.count()方法(最慢)