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 序列化 pickle/cPickle模块使用介绍
Nov 30 Python
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
Aug 21 Python
Python numpy实现二维数组和一维数组拼接的方法
Jun 05 Python
Python中pandas dataframe删除一行或一列:drop函数详解
Jul 03 Python
Python中GIL的使用详解
Oct 03 Python
Empty test suite.(PyCharm程序运行错误的解决方法)
Nov 30 Python
django框架model orM使用字典作为参数,保存数据的方法分析
Jun 24 Python
Python之pymysql的使用小结
Jul 01 Python
对Django外键关系的描述
Jul 26 Python
python输出决策树图形的例子
Aug 09 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
Mar 23 Python
关于多种方式完美解决Python pip命令下载第三方库的问题
Dec 21 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引用计数器进行垃圾收集机制介绍
2012/09/19 PHP
Yii2实现ajax上传图片插件用法
2016/04/28 PHP
JavaScript 事件对象的实现
2009/07/13 Javascript
用cssText批量修改样式
2009/08/29 Javascript
javascript定义函数的方法
2010/12/06 Javascript
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
2012/01/13 Javascript
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
Javascript验证用户输入URL地址是否为空及格式是否正确
2014/10/09 Javascript
node.js中的path.normalize方法使用说明
2014/12/08 Javascript
JavaScript中的数组操作介绍
2014/12/30 Javascript
JavaScript 基本概念
2015/01/20 Javascript
使用PHP+JavaScript将HTML页面转换为图片的实例分享
2016/04/18 Javascript
Bootstrap模态框(modal)垂直居中的实例代码
2016/08/18 Javascript
Jquery针对tr td的一些实用操作方法(必看篇)
2016/10/05 Javascript
Javascript 判断两个IP是否在同一网段实例代码
2016/11/28 Javascript
详解从新建vue项目到引入组件Element的方法
2017/08/29 Javascript
详解bootstrap-fileinput文件上传控件的亲身实践
2019/03/21 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
Vue select 绑定动态变量的实例讲解
2020/10/22 Javascript
[49:20]VG vs TNC Supermajor小组赛B组败者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
Python多线程编程(二):启动线程的两种方法
2015/04/05 Python
在Python中操作文件之truncate()方法的使用教程
2015/05/25 Python
对python中使用requests模块参数编码的不同处理方法
2018/05/18 Python
python 使用while写猜年龄小游戏过程解析
2019/10/07 Python
回门宴父母答谢词
2014/01/26 职场文书
婚礼主持词开场白
2014/03/13 职场文书
《画》教学反思
2014/04/14 职场文书
2014年档案管理员工作总结
2014/12/01 职场文书
安全先进个人材料
2014/12/29 职场文书
会计工作能力自我评价
2015/03/05 职场文书
2016年春节慰问信息
2015/03/25 职场文书
呼兰河传读书笔记
2015/06/30 职场文书
2016年小学中秋节活动总结
2016/04/05 职场文书
CSS基础详解
2021/10/16 HTML / CSS
Python3使用Qt5来实现简易的五子棋小游戏
2022/05/02 Python