发布网友 发布时间:2022-04-21 19:15
共2个回答
懂视网 时间:2022-04-29 12:49
python统计不同字符的个数
首先使用input获取输入数据,并存入到str参数里
然后使用for循环str的每一个字符,循环内使用str.count()获取字符出现的字数,并存入一个字典中
最后输出字典即可。
代码如下:
str = input("请输入一串字符:") resoult = {} for i in str: resoult[i] = str.count(i) print(resoult)
效果如下:
注:
Python count() 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。
语法:
str.count(sub, start= 0,end=len(string))
众多python培训视频,尽在python学习网,欢迎在线学习!
热心网友 时间:2022-04-29 09:57
这里用到了字典基本的建立,value调用,键值对增加,value修改,以及items()函数。
编程实现
流程:文件遍历-除去空白——判断字典中有无该字符——有则Value加1,无则新建为1——按Value排序并返回
具体实现代码如下:
#统计txt文件中的字符频率
def countwords(txt):
stat = {}#建立字典存储存储字符和对应频率
for line in txt:
line = line.strip()
if len(line) == 0:
continue
for i in range(len(line)):
#判断有无该字符的键
if(line[i] in stat):
stat[line[i]]+=1
else:
stat[line[i]]=1
result=sorted(stat.items(),key = lambda x:x[1],reverse = True)#按value大小排序
return result
xyj = open('xyj.txt' ,'r',encoding = 'utf-8')#读文件
r=countwords(xyj)#调用函数
xyj.close