Python统计列表中的重复项出现的次数的方法


Posted in Python onAugust 18, 2014

本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴。具体方法如下:

对一个列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],现在我们需要统计这个列表里的重复项,并且重复了几次也要统计出来。

方法1:

mylist = [1,2,2,2,2,3,3,3,4,4,4,4]
myset = set(mylist)  #myset是另外一个列表,里面的内容是mylist里面的无重复 项
for item in myset:
  print("the %d has found %d" %(item,mylist.count(item)))

方法2:

List=[1,2,2,2,2,3,3,3,4,4,4,4]
a = {}
for i in List:
  if List.count(i)>1:
    a[i] = List.count(i)
print (a)

利用字典的特性来实现。

方法3:

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

这里再增补一个只用列表实现的方法:

l=[1,4,2,4,2,2,5,2,6,3,3,6,3,6,6,3,3,3,7,8,9,8,7,0,7,1,2,4,7,8,9]

count_times = []
for i in l :
  count_times.append(l.count(i))

m = max(count_times)
n = l.index(m)

print (l[n])

其实现原理就是把列表中的每一个数出现的次数在其对应的位置记录下来,然后用max求出出现次数最多的位置。
只用这段代码的话,有一个缺点,如果有多个结果,最后的现实的结果只是出现在最左边的那一个,不过解决方法也很简单

感兴趣的读者可以动手实践一下本文所述代码,还可以对不足之处加以改进,使之功能更加完善。

Python 相关文章推荐
python选择排序算法的实现代码
Nov 21 Python
用python + hadoop streaming 分布式编程(一) -- 原理介绍,样例程序与本地调试
Jul 14 Python
Python isinstance函数介绍
Apr 14 Python
介绍Python中内置的itertools模块
Apr 29 Python
Python设计模式之抽象工厂模式
Aug 25 Python
python 网络编程详解及简单实例
Apr 25 Python
pygame游戏之旅 python和pygame安装教程
Nov 20 Python
django orm 通过related_name反向查询的方法
Dec 15 Python
Python matplotlib画图与中文设置操作实例分析
Apr 23 Python
python原类、类的创建过程与方法详解
Jul 19 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
May 16 Python
python opencv检测直线 cv2.HoughLinesP的实现
Jun 18 Python
Python中无限元素列表的实现方法
Aug 18 #Python
Python中实现字符串类型与字典类型相互转换的方法
Aug 18 #Python
Python命名空间详解
Aug 18 #Python
Python判断变量是否已经定义的方法
Aug 18 #Python
Python实现全角半角转换的方法
Aug 18 #Python
Python实现冒泡,插入,选择排序简单实例
Aug 18 #Python
Python算法之栈(stack)的实现
Aug 18 #Python
You might like
php中文本数据翻页(留言本翻页)
2006/10/09 PHP
PHP函数http_build_query使用详解
2014/08/20 PHP
PHP获取当前执行php文件名的代码
2017/03/02 PHP
js跟随滚动条滚动浮动代码
2009/12/31 Javascript
轻轻松松学JS调试(不下载任何工具)
2010/04/14 Javascript
关于this和self的使用说明
2010/08/01 Javascript
js replace正则表达式应用案例讲解
2013/01/17 Javascript
jQuery调用RESTful WCF示例代码(GET方法/POST方法)
2014/01/26 Javascript
javascript删除元素节点removeChild()用法实例
2015/05/26 Javascript
浅谈JavaScript中运算符的优先级
2015/07/07 Javascript
JS实现下拉菜单赋值到文本框的方法
2015/08/18 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
2015/12/04 Javascript
IE8 内存泄露(内存一直增长 )的原因及解决办法
2016/04/06 Javascript
Vue学习笔记进阶篇之单元素过度
2017/07/19 Javascript
基于 Vue 实现一个酷炫的 menu插件
2017/11/14 Javascript
angular1配合gulp和bower的使用教程
2018/01/19 Javascript
微信小程序实现评论功能
2018/11/28 Javascript
vue cli3.0打包上线静态资源找不到路径的解决操作
2020/08/03 Javascript
[03:14]2014DOTA2西雅图国际邀请赛 EG战队巡礼
2014/07/07 DOTA
[02:41]DOTA2亚洲邀请赛小组赛第三日 赛事回顾
2015/02/01 DOTA
Python学习教程之常用的内置函数大全
2017/07/14 Python
Python列表推导式与生成器用法分析
2018/08/02 Python
django 简单实现登录验证给你
2019/11/06 Python
Python 实现敏感目录扫描的示例代码
2020/05/21 Python
python删除某个目录文件夹的方法
2020/05/26 Python
Vilebrequin欧洲官网:法国豪华泳装品牌(男士沙滩裤)
2018/04/14 全球购物
世界领先的豪华床上用品供应商之一:Bedeck Home
2019/03/18 全球购物
StubHub新西兰:购买和出售你的门票
2019/04/22 全球购物
波兰快递服务:Globkurier.pl
2019/11/08 全球购物
建筑工程自我鉴定
2013/10/18 职场文书
外贸实习生自荐信范文
2013/11/24 职场文书
英语专业毕业生自荐信范文
2013/12/31 职场文书
会计工作能力自我评价
2015/03/05 职场文书
2015年保育员个人工作总结
2015/05/13 职场文书
表扬稿表扬信的格式及范文
2019/06/24 职场文书
2019最新公司租房合同(例文)
2019/07/18 职场文书