Python找出list中最常出现元素的方法


Posted in Python onJune 14, 2016

本文实例讲述了Python找出list中最常出现元素的方法。分享给大家供大家参考,具体如下:

假设一个list中保存着各种元素,需要统计每个元素出现的个数,并打印出最常出现的前三个元素分别是什么。list如下:

word_list =["is","you","are","I","am","OK","is","OK","She","is","OK","is","I"]

方法一(常规方法):

>>> word_counter ={}
>>> for word in word_list:
  if word in word_counter:
    word_counter[word] +=1
  else:
    word_counter[word] = 1
>>> popular_word =sorted(word_counter, key = word_counter.get, reverse = True)
)
>>> top_3 = popular_word[:3]
>>> top_3
['is', 'OK', 'I']

方法二:适用于Python2.7

>>> from collections import Counter
>>> c = Counter(word_list)
>>> c.most_common(3)

方法三:

>>> counter ={}
>>> for i in word_list: counter[i] = counter.get(i, 0) + 1
>>> sorted([ (freq,word) for word, freq in counter.items() ], reverse=True)[:3]
[(4, 'is'), (3, 'OK'), (2, 'I')]

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python列表操作实例
Jan 14 Python
深入理解Python中各种方法的运作原理
Jun 15 Python
使用httplib模块来制作Python下HTTP客户端的方法
Jun 19 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
Jan 20 Python
python判断一个集合是否为另一个集合的子集方法
May 04 Python
Python多进程写入同一文件的方法
Jan 14 Python
django 实现编写控制登录和访问权限控制的中间件方法
Jan 15 Python
在Python中字典根据多项规则排序的方法
Jan 21 Python
Django Rest framework认证组件详细用法
Jul 25 Python
python3.8 微信发送服务器监控报警消息代码实现
Nov 05 Python
python3爬虫中多线程的优势总结
Nov 24 Python
python数字图像处理:图像的绘制
Jun 28 Python
Python中列表元素转为数字的方法分析
Jun 14 #Python
python实现中文转换url编码的方法
Jun 14 #Python
Python的Django框架中消息通知的计数器实现教程
Jun 13 #Python
详解Python的Flask框架中的signals信号机制
Jun 13 #Python
Python的Flask站点中集成xhEditor文本编辑器的教程
Jun 13 #Python
Flask的图形化管理界面搭建框架Flask-Admin的使用教程
Jun 13 #Python
Python的Flask框架中集成CKeditor富文本编辑器的教程
Jun 13 #Python
You might like
php根据指定位置和长度获得子字符串的方法
2015/03/17 PHP
jquery 循环显示div的示例代码
2013/10/18 Javascript
Node.js中AES加密和其它语言不一致问题解决办法
2014/03/10 Javascript
详谈jQuery操纵DOM元素属性 attr()和removeAtrr()方法
2015/01/22 Javascript
jQuery实现购物车数字加减效果
2015/03/14 Javascript
Javascript闭包实例详解
2015/11/29 Javascript
jQuery实现form表单基于ajax无刷新提交方法详解
2015/12/08 Javascript
jQuery ajax 当async为false时解决同步操作失败的问题
2016/11/18 Javascript
AngularJS封装指令方法详解
2016/12/12 Javascript
Vue.js 2.0和Cordova开发webApp环境搭建方法
2018/02/26 Javascript
微信小程序自定义prompt组件步骤详解
2018/06/12 Javascript
JavaScript 中 JSON.parse 函数 和 JSON.stringify 函数
2018/12/05 Javascript
JS基于ES6新特性async await进行异步处理操作示例
2019/02/02 Javascript
Vue开发之封装分页组件与使用示例
2019/04/25 Javascript
jQuery实现图片下载代码
2019/07/18 jQuery
解决vue单页面修改样式无法覆盖问题
2019/08/05 Javascript
JS常用排序方法实例代码解析
2020/03/03 Javascript
vue iview实现动态新增和删除
2020/06/17 Javascript
js实现列表按字母排序
2020/08/11 Javascript
[04:26]2014DOTA2西雅图国际邀请赛 总决赛TOPPLAY
2014/07/22 DOTA
利用python修改json文件的value方法
2018/12/31 Python
python动态进度条的实现代码
2019/07/03 Python
使用Python轻松完成垃圾分类(基于图像识别)
2019/07/09 Python
pandas DataFrame行或列的删除方法的实现示例
2019/08/02 Python
python多线程同步实例教程
2019/08/11 Python
python实现生成Word、docx文件的方法分析
2019/08/30 Python
Python warning警告出现的原因及忽略方法
2020/01/31 Python
python不到50行代码完成了多张excel合并的实现示例
2020/05/28 Python
Html5新增标签与样式及让元素水平垂直居中
2019/07/11 HTML / CSS
canvas裁剪clip()函数的具体使用
2018/03/01 HTML / CSS
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2015/09/07 面试题
会计求职自荐信
2014/06/20 职场文书
小学数学教研活动总结
2014/07/01 职场文书
德能勤绩廉个人总结
2015/02/14 职场文书
2015年仓库工作总结
2015/04/09 职场文书
简历自我评价范文
2019/04/24 职场文书