python输出字符串中出现次数最多的字母及其出现次数并排序

题目描述

python:输入字符串,输出字符串中出现次数最多的字母及其出现次数。如果有多个字母出现次数一样,则按字符从小到大顺序输出字母及其出现次数。

【输入形式】

一个字符串。

【输出形式】

出现次数最多的字母及其出现次数,如果没有字母,输出 no alpha

案例代码

def most_common_letter(s):
    # 统计每个字母出现的次数
    letter_count = {}
    for char in s:
        if char.isalpha():
            letter_count[char] = letter_count.get(char, 0) + 1

    # 找到出现次数最多的字母
    max_count = 0
    max_letters = []
    for letter, count in letter_count.items():
        if count > max_count:
            max_count = count
            max_letters = [letter]
        elif count == max_count:
            max_letters.append(letter)

    # 如果没有字母,输出 "no alpha"
    if not max_letters:
        return "no alpha"

    # 按字符从小到大排序,并输出结果
    max_letters.sort()
    result = f"{max_letters[0]} {max_count}"
    return result

# 输入字符串
input_str = input("请输入一个字符串: ")

# 输出结果
print(most_common_letter(input_str))

这个程序会首先统计输入字符串中每个字母出现的次数,然后找到出现次数最多的字母及其出现次数。如果没有字母出现,就输出 “no alpha”。如果有多个字母出现次数相同,就按照字母从小到大的顺序输出。

© 版权声明
THE END
喜欢就支持一下吧
点赞6赞赏 分享