英文字符频率统计(Python)

编写一个程序,对给定字符串中出现的 a~z 字母频率进行分析,忽略大小写,采用降序方式输出。

def eng(txt):             #定义一个函数  
    txt.lower()           #全部小写
    count= {}             #定义一个字典
    for word in txt:
        if word in "abcdefghijklmnopqrstuvwxyz":
            count[word] = count.get(word,0) + 1         #根据键信息查找并返回值信息
    txtitems = list(count.items())                      #将字典转换为列表才可以进行排序
    txtitems.sort(key = lambda x:x[1],reverse = True)   # 根据值进行降序排序,默认是升序
    for i in range(len(txtitems)):                      #0到len(items),不包括len(items)作为下标,循环遍历列表items中的键值,分别赋值给变量word,count
        word,count = txtitems[i]
        print("{:<10}{:<5}".format(word,count))
    return txt  
 
x=input("请输入一段英文字符:")
eng(x)

运行程序结果:

请输入一段英文字符: ababa
a         3    
b         2   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值