如何用python统计字符串中字母个数?

如何用python统计字符串中字母个数?,第1张

概述如何用python统计字符串字母个数

如何用python统计字符串中字母个数

python统计字符串中字母个数的方法:

先使用这三种代码

dic=dict()d={}s=set()s='helloworld'(1)d=dict()    for x in s:      if x not in d.keys():          d[x]=1       else:         d[x]=d[x]+1    print(d)(2)d2=dict()    for x in s:      d2[x]=d2.get(x,0)+1    print(d2)(3)d3=dict()   for x in s:      d3[x]=s.count(x)   print(d3)

这三种方法均是以字典的形式输出,但可以看出,通过第二三种的内置函数方法更简便。

def countchar(str):    str=str.lower()#化成小写    ans=[]    for i in range(26): #列表赋初值  26 个 0        ans.append(0)    for i in str:        if(ord(i)>=ord('a')and ord(i)<=ord('z')):            ans[ord(i)-ord('a')]=ans[ord(i)-ord('a')]+1  #统计个数    return ansif __name__ == "__main__":     str = input()     print(countchar(str))def countchar(st):                        #定义数个数的函数        keys = [chr(i+97) for i in range(26)] #生成26个字母的key列表        di = dict().fromkeys(keys,0)          #赋给每个key初始值0        new = []                  #建立一个新列表用于存放有序的key        st = st.lower()           #将所有输入的字符改为小写        for s in st:              #遍历字符串               di[s] = st.count(s) #输出每个字符的个数,存放到字典里        for k in keys:        #遍历keys,将其在di中的值添加到新列表,获得有序的26个字母的个数            new.append(di[k])        return new            #返回存有26个字母个数的列表if __name__ == "__main__":    st = input()              #输入字符串    str1 = ""                 #定义一个空字符串    for s in st:              #遍历输入的字符串        if s.isAlpha() != 0:  #只有字母才添加到新字符串,标点忽略不计              str1 += s        print(countchar(str1))    #输出列表

上面的两种方法也是输出字符串的字母出现次数,略有不同的是,这里它先设定了26个字母,并使其对应的初始值为0,然后统计字符串中的各字母出现次数,每个字母出现了多少次,即为其对应的初始值处的值。而没出现的字母,其对应的值则仍为初始值0

通过上述的几种方法,我们不难总结出解决这种问题的思路:从键盘随机输入一段字符串,然后循环遍历字符串,通过循环字符串中的每一个字符,统计各类字符出现的次数,循环遍历字符串。

推荐教程:《Python视频教程》 总结

以上是内存溢出为你收集整理的如何用python统计字符串中字母个数?全部内容,希望文章能够帮你解决如何用python统计字符串中字母个数?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1184063.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存