第一章 中期练习题 简单 第6题
题目
简介
实现一个程序,
输入一个字符串(接收用户输入),
展示其中每个字母及其出现的频率(逐行输出)。
按照频率高低顺序输出,频率高的先输出。
补充:
默认输入非空。
默认输入字符串中只有字母,没有其他字符。
详细说明
比如banana
这个字符串。
其中
b
出现了1次
a
出现了3次
n
出现了2次
输出格式如下
a 3
n 2
b 1
示例
输入: banana
输出:
a 3
n 2
b 1
输入: success
s 3
c 2
u 1
e 1
输入: semester
输出:
e 3
s 2
m 1
t 1
r 1
分割线
本小段没有实际意义,
仅用于分隔题目和答案。
防止学生无意中直接看到答案,
影响思路。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
答案
word = input()
counts = {}
for letter in word:
if letter not in counts:
counts[letter] = 1
else:
counts[letter] += 1
sorted_counts = sorted(counts.items(), key=lambda item: item[1], reverse = True)
for letter, count in sorted_counts:
print(letter, count)