编写程序,统计用户的输入中,各单词出现的频率(只需考虑英文单词的情况),按字母顺序排序后,输出所识别的单词和单词出现的次数。 例如: 输入为: hello world and practice makes perfect and hello world again 输出为: again:1 and:2 hello:2 makes:1 perfect:1 practice:1 world:2 不用re
时间: 2024-03-14 07:43:04 浏览: 121
统计指定的文本文件(英文)中,每个单词的出现频率,输出按字典序排列的单词频度表。
好的,这里提供一个不使用正则表达式的 Python 代码示例:
```python
# 获取用户输入
user_input = input("请输入一段英文文本:")
# 将文本转换成小写,然后使用空格将它们分割成单词列表
word_list = user_input.lower().split()
# 统计单词出现的次数
word_count = {}
for word in word_list:
# 只考虑由字母组成的单词
if word.isalpha():
if word not in word_count:
word_count[word] = 1
else:
word_count[word] += 1
# 按字母顺序排序
sorted_words = sorted(word_count.items(), key=lambda x: x[0])
# 输出结果
for word, count in sorted_words:
print(f"{word}:{count}")
```
这个程序会将用户输入转换成小写,并且使用空格将它们分割成单词列表。然后,它会统计每个单词出现的次数,并且存储到一个字典中。在统计单词出现次数时,只考虑由字母组成的单词,其他非字母的字符将被忽略。最后,它会按字母顺序排序,并且输出每个单词和它出现的次数。
阅读全文