结合Map从统计从文件中每个英文单词出现的频率,分别按照关键字的字母序列从小到大显示输出或按照单词的频率从小到大显示输出;
时间: 2024-02-25 19:56:40 浏览: 59
好的,这是一个比较常见的文本处理问题。我可以给你提供一个简单的Python实现,使用字典(dict)来统计单词出现的频率,然后按照关键字字母序列或单词频率进行排序输出。
代码如下:
```python
import re
# 读取文本文件
with open('text.txt', 'r') as f:
text = f.read()
# 将文本中的单词进行统计
word_dict = {}
words = re.findall(r'\b\w+\b', text)
for word in words:
if word.lower() in word_dict:
word_dict[word.lower()] += 1
else:
word_dict[word.lower()] = 1
# 按照字母序列排序输出
print('按照字母序列排序:')
for word in sorted(word_dict.keys()):
print(word, word_dict[word])
# 按照单词频率排序输出
print('按照单词频率排序:')
for word, freq in sorted(word_dict.items(), key=lambda x: x[1]):
print(word, freq)
```
这个代码通过正则表达式 `\b\w+\b` 来匹配文本中的单词,然后使用一个字典来统计每个单词出现的次数。最后,通过 Python 中的 `sorted` 函数来对字典按照字母序列或单词频率进行排序输出。
阅读全文