Python 随机输入一个字符串,统计该字符串中各种字符出现的次数,并将统计结果按照字符出现次数从高到低进行排序,最终打印排序后的信息

题目要求:

随机输入一个字符串,统计该字符串中各种字符出现的次数,并将统计结果按照字符出现次数从高到低进行排序,最终打印排序后的信息。每行效果如下:
XXX 字符出现次数为: X

代码实现:

mystring = input("请输入一个随机的字符串:")    # 获取字符串
mydict = {}     # 定义一个字典
# for 循环方法
for i in mystring:
    mydict[i] = mystring.count(i)   # 遍历字符串,将字符串中某字符出现的次数存入字典中【字符作为键,次数作为值】
result = sorted(mydict.items(), key=lambda item: item[1], reverse=True)  # 根据value降序排序后的键值对
# print(result)     # result是列表类型
index = 0
while index < len(result):
    print(f"'{result[index][0]}'字符出现次数为:{result[index][1]}")    # 输出列表中字典的键值
    index += 1

运行结果:

Python 随机输入一个字符串,统计该字符串中各种字符出现的次数,并将统计结果按照字符出现次数从高到低进行排序,最终打印排序后的信息_第1张图片

总结分析:

关于sorted():

result = sorted(字典.items(), key=lambda item: item[1], reverse=True)  
# 根据value降序排序后的键值对
reverse默认为False(升序),True为降序
item:item【1】代表按照字典的值进行排序,若为item:item【0】则是按照字典的键按照ASCALL码进行排序

你可能感兴趣的:(python,数据结构,开发语言)