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实现的一个自动售饮料程序代码分享
Aug 25 Python
linux下python抓屏实现方法
May 22 Python
python修改字典内key对应值的方法
Jul 11 Python
python机器学习实战之最近邻kNN分类器
Dec 20 Python
Python语言描述随机梯度下降法
Jan 04 Python
Flask框架Jinjia模板常用语法总结
Jul 19 Python
使用Python如何测试InnoDB与MyISAM的读写性能
Sep 18 Python
pycharm debug功能实现跳到循环末尾的方法
Nov 29 Python
Python PyCharm如何进行断点调试
Jul 05 Python
使用pyhon绘图比较两个手机屏幕大小(实例代码)
Jan 03 Python
python爬虫中url管理器去重操作实例
Nov 30 Python
python异常中else的实例用法
Jun 15 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
getimagesize获取图片尺寸实例
2014/11/15 PHP
PHP Hash算法:Times33算法代码实例
2015/05/13 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
ThinkPHP 模板substr的截取字符串函数详解
2017/01/09 PHP
javascript中关于执行环境的杂谈
2011/08/14 Javascript
jquery常用函数与方法汇总
2015/09/01 Javascript
全面解析Bootstrap中nav、collapse的使用方法
2016/05/22 Javascript
使用jQuery中的wrap()函数操作HTML元素的教程
2016/05/24 Javascript
JS随机打乱数组的方法小结
2016/06/22 Javascript
使用JS在浏览器中判断当前网络连接状态的几种方法
2017/05/05 Javascript
webpack2.0配置postcss-loader的方法
2017/08/17 Javascript
基于vue+canvas的excel-like组件实例详解
2017/11/28 Javascript
Javasript设计模式之链式调用详解
2018/04/26 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
vue如何安装使用Quill富文本编辑器
2018/09/21 Javascript
详解在create-react-app使用less与antd按需加载
2018/12/06 Javascript
JS数组去重的6种方法完整实例
2018/12/08 Javascript
详解Vue.directive 自定义指令
2019/03/27 Javascript
JavaScript面向对象程序设计中对象的定义和继承详解
2019/07/29 Javascript
在vue-cli中引入lodash.js并使用详解
2019/11/13 Javascript
[00:11]战神迅矛
2019/03/06 DOTA
[46:59]完美世界DOTA2联赛PWL S2 GXR vs Ink 第二场 11.19
2020/11/20 DOTA
在Pandas中给多层索引降级的方法
2018/11/16 Python
Django管理员账号和密码忘记的完美解决方法
2018/12/06 Python
详解pandas.DataFrame中删除包涵特定字符串所在的行
2019/04/04 Python
Python使用dict.fromkeys()快速生成一个字典示例
2019/04/24 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
Python networkx包的实现
2020/02/14 Python
django处理select下拉表单实例(从model到前端到post到form)
2020/03/13 Python
Python实现给PDF添加水印的方法
2021/01/25 Python
无需JS和jQuery代码实现CSS3鼠标浮动放大图片
2016/11/21 HTML / CSS
Petmate品牌官方网站:宠物用品
2018/11/25 全球购物
《童趣》教学反思
2014/02/19 职场文书
演讲稿格式范文
2014/05/19 职场文书
MySQL索引失效的典型案例
2021/06/05 MySQL
vue-router中hash模式与history模式的区别
2021/06/23 Vue.js