Python 统计字母出现频率

作者&投稿:韶娄 (若有异议请与网页底部的电邮联系)
Python计算一篇英文文章每个字母出现频率~

# coding=utf-8from collections import Counters = "absdflsjflkdsjflkfjwelkrklewrmlkewmfslkdfjsdljflsdflkewnjklhflkjdsfdsf"print dict(Counter(s))# {'a': 1, 'b': 1, 'e': 4, 'd': 7, 'f': 11, 'h': 1, 'k': 9, 'j': 7, 'm': 2, 'l': 12, 'n': 1, 's': 8, 'r': 2, 'w': 4}如果解决了您的问题请采纳!
如果未解决请继续追问

class Solution(object): def lengthOfLongestSubstring(self, s): """ :type s: str :rtype: int """ lenS = len(s); maxLen = 0; left = right = 0; charDict = {}; while right < lenS: if s[right] in charDict and left <= charDict[s[right]]: #出现重复的字符且这个字符在窗口中 left = charDict[s[right]] + 1; #左窗口位置调整到这个重复字符的右端 else: #没有重复字符出现 maxLen = max(maxLen,right - left + 1); #更新最长长度 charDict[s[right]] = right; #更新字符位置 right += 1; #右窗口后移 return maxLen;

代码如下:

#coding=utf-8

# 输入
s = input()

# 统计

d = {}

for c in s:
    d[c] = (d[c] + 1) if c in d else 1

# 输出
for i in d:
    print(i, d[i])

运行结果:

排序版本:

#coding=utf-8

# 输入
s = input()

# 统计

d = {}

for c in s:
    d[c] = (d[c] + 1) if c in d else 1

# 排序
result = sorted(d.items(), key = lambda x:x[1], reverse = True)

# 输出
for i in result:
    print(i[0], i[1])

运行结果;



你好,你可以考虑使用下面的代码:
inputStr=“adhdbxhsjjsbbsxjdjjebbxbsheuhdbbd”
ResultDict={}
for index in range(len(inputStr)):
if inputStr[index] in ResultDict:
ResultDict[inputStr[index]] +=1
else:
ResultDict[inputStr[index]]=1

for each in ResultDict:
print(each +” “ +str(ResultDict[each]))


田东县13866617277: Python计算一篇英文文章每个字母出现频率 -
智旺小儿:[答案] # coding=utf-8 from collections import Counter s = "absdflsjflkdsjflkfjwelkrklewrmlkewmfslkdfjsdljflsdflkewnjklhflkjdsfdsf" print dict(Counter(s)) # {'a': 1, 'b': 1, 'e': 4, 'd': 7, 'f': 11, 'h': 1, 'k': 9, 'j': 7, 'm': 2, 'l': 12, 'n': 1, 's': 8, 'r': 2, 'w': 4}如果解决了您的问题请采...

田东县13866617277: 怎么用python统计字符串中每个字符出现的次数 -
智旺小儿: python统计字符串中指定字符出现的次数,例如想统计字符串中空格的数量 s = "Count, the number of spaces." print s.count(" ") x = "I like to program in Python" print x.count("i")

田东县13866617277: 用python随机产生1000个小写字母,统计出各个字母出现的次数,并按照字母表顺序统计输出? -
智旺小儿: import random as rd rd.seed(1) s=[] for i in range(1,1001):n=rd.randint(97,123)c=chr(n)s.append(c)def letters():#生成小写英文字母列表l=[]for i in range(97,123):l.append(chr(i))return lletts=letters() flags=[] for i in letts:flag=0for j in s:if j==i:flag+=1flags.append(flag) print(flags)

田东县13866617277: 用python统计从键盘上输入的字符串中英文字母a~z出现的次数,忽略大小写(统计结果用字典保存) -
智旺小儿: s = input().lower()result = [[e, s.count(e)] for e in set(list(s))]print(result)

田东县13866617277: python怎么判断字符串中出现次数最多的字母 -
智旺小儿: class Solution(object): def lengthOfLongestSubstring(self, s): """ :type s: str :rtype: int """ lenS = len(s); maxLen = 0; left = right = 0; charDict = {}; while right < lenS: if s[right] in charDict and left <= charDict[s[right]]: #出现重复的字符且这个字...

田东县13866617277: Python计算一篇英文文章每个字母出现频率 -
智旺小儿: # coding=utf-8 from collections import Counter s = "absdflsjflkdsjflkfjwelkrklewrmlkewmfslkdfjsdljflsdflkewnjklhflkjdsfdsf" print dict(Counter(s))# {'a': 1, 'b': 1, 'e': 4, 'd': 7, 'f': 11, 'h': 1, 'k': 9, 'j': 7, 'm': 2, 'l': 12, 'n': 1, 's': 8, 'r': 2, 'w': 4}如果解决了您的问题请采纳!如果未解决请继续追问

田东县13866617277: 如何用Python编程输入英文语句,将所有字母变成大写,统计每个字母的个数,并输出出现次数最多的字母次数? -
智旺小儿: 下面来是对源应百的度code inputStr ="XXXdsfdssd"aa = inputStr.upper() dict ={}for each in range(len(aa)): if aa[each] in dict: dict[aa[each]] +=1 else: dict[aa[each]] =1aar = sorted(dict.items(), key=lambda item:item[1]) print (aar[-1])

田东县13866617277: python 计算一个list 里相同字母出现的次数 -
智旺小儿: >>> l = ["egg", "bacon", "spam", "spam", "eggs", "spam", "bacon","egg"]>>> nl = list(set(l))>>> result = []>>> for i in nl:... c = 0... for j in l:... if i == j:... c += 1... result.append([i,c])... >>> result [['bacon', 2], ['eggs', 1], ['egg', 2], ['spam', 3]]

田东县13866617277: Python按字符出现频率的降序打印字母,分别尝试录入一些 -
智旺小儿: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19s=input("please input string:") #假如输的是hellopython freq={} forc ins:freq[c]=freq.setdefault(c,3)+1print(freq)#print(','.join(sorted(freq,key=lambda x:(-freq[x],x))))""" setdefault(key[, default]...

田东县13866617277: python2 怎么统计列表字符串出现次数 -
智旺小儿: 遍历字符串所有子串,并存于字典中,每一个子串,在字典中寻找,如果存在,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 这个方法我把它叫做蠕虫....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网