python2 怎么统计列表字符串出现次数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python2 怎么统计列表字符串出现次数相关的知识,希望对你有一定的参考价值。
参考技术A 遍历字符串所有子串,并存于字典中,每一个子串,在字典中寻找,如果存在,key加一,否则新加入key,赋值为1。dic=
s='AAAA'
for i in range(len(s)):
for j in range(i+2,len(s)):
t=s[i:j]
if t in dic:
dic[t]+=1
else:
dic[t]=1
这个方法我把它叫做蠕虫。因为他是无重复统计,类似于蠕虫的运动。
获取所有字符,并统计在字符串中出现的次数。
def worm(s):
dic=
for i in range(len(s)-3):
j=i
s1=s[i:i+2]
s2=s[i+2:]
while s2.find(s1)!=-1:
count=1
stemp=s2
while stemp.find(s1)!=-1:
count+=1
stemp=stemp[stemp.find(s1)+len(s1):]
if not(s1 in dic):
dic[s1]=count
j+=1
s1=s[i:j+2]
s2=s[j+2:]
return dic
这是一个升级版的方法,因为它在比较之前引入了查询,避免不必要的统计
希望各位生物信息工作者可以相互交流,提出修改建议。
def worm(s):
dic=
for i in range(len(s)-3):
j=i
s1=s[i:i+2]
if s1 in dic:
continue
s2=s[i+2:]
while s2.find(s1)!=-1:
count=1
stemp=s2
while stemp.find(s1)!=-1:
count+=1
stemp=stemp[stemp.find(s1)+len(s1):]
if not(s1 in dic):
dic[s1]=count
j+=1
s1=s[i:j+2]
s2=s[j+2:]
return dic
Python统计列表中的重复项出现的次数的方法
前言
在实际工作和学习中,经常会遇到很多重复的数据,但是我们又必须进行统计,所及这里简单介绍一下统计列表中重复项的出现次数的简单方法。
实例
本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴。具体方法如下:
#方法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求出出现次数最多的位置。
只用这段代码的话,有一个缺点,如果有多个结果,最后的现实的结果只是出现在最左边的那一个,不过解决方法也很简单,大家可以尝试一下哦。
希望通过上面的操作能帮助大家获取一些想要的数据。如果你有什么好的意见,建议,或者有不同的看法,我都希望你留言和我们进行交流、讨论。
如果想快速联系我,欢迎关注微信公众号:AiryData。
本文出自 “10993128” 博客,转载请与作者联系!
以上是关于python2 怎么统计列表字符串出现次数的主要内容,如果未能解决你的问题,请参考以下文章