编写程序统计这些字母或单词的出现频率,按升序保存为:“字母(单词):出现的次数”,输出该结果。如果用户直接输入回车,提示“请输入数据!”;如果用户输入数据中包含非法数据,系统提示“请全部输入英文字母或单词!”
时间: 2023-12-26 22:04:25 浏览: 79
好的,以下是 Python 代码实现该功能:
``` python
import re
# 获取用户输入
user_input = input("请输入若干个英文字母或单词,空格分隔:")
# 判断用户是否输入数据
if not user_input:
print("请输入数据!")
else:
# 判断用户输入是否合法
if not re.match("^[a-zA-Z ]+$", user_input):
print("请全部输入英文字母或单词!")
else:
# 统计字母或单词的出现频率
word_dict = {}
for word in user_input.split():
if word in word_dict:
word_dict[word] += 1
else:
word_dict[word] = 1
# 按升序排序
sorted_words = sorted(word_dict.items())
# 输出结果
for word, count in sorted_words:
print(f"{word}:{count}")
```
以上代码首先通过 `input` 函数获取用户输入的字符串,然后判断用户是否输入了数据,如果没有则输出提示信息,如果有则使用正则表达式判断用户输入是否合法,如果不合法则输出提示信息,否则统计字母或单词的出现频率,然后对结果进行升序排序,并输出结果。
阅读全文