本文实例展示了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)
登录后复制
利用字典的特性来实现。
立即学习“Python免费学习笔记(深入)”;
方法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求出出现次数最多的位置。
只用这段代码的话,有一个缺点,如果有多个结果,最后的现实的结果只是出现在最左边的那一个,不过解决方法也很简单
感兴趣的读者可以动手实践一下本文所述代码,还可以对不足之处加以改进,使之功能更加完善。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2290721.html