从文件in.txt读取信息,文件里的单词中间由空格隔开,统计每个单词出现的次数,从大到小排序后输出到文件out.txt
时间: 2024-02-22 17:58:56 浏览: 128
统计指定的文本文件(英文)中,每个单词的出现频率,输出按字典序排列的单词频度表。
好的,我可以帮你写一个Python程序来完成这个任务。请确保当前目录下有in.txt文件,并且out.txt文件不存在。以下是程序代码:
```python
# 读取文件内容
with open("in.txt", "r") as f:
content = f.read()
# 统计单词出现次数
word_count = {}
for word in content.split():
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
# 按照出现次数排序
sorted_word_count = sorted(word_count.items(), key=lambda x: x[1], reverse=True)
# 将结果输出到文件
with open("out.txt", "w") as f:
for word, count in sorted_word_count:
f.write(f"{word} {count}\n")
```
程序首先读取in.txt文件的内容,然后统计每个单词出现的次数,存储在一个字典中。接着,使用Python内置的sorted函数按照出现次数对字典进行排序,并将结果输出到out.txt文件中。
注意,如果in.txt文件中有多个空格或者换行符,程序可能会将它们当作一个单词的一部分。如果需要更精确的处理,可以使用正则表达式或者第三方库如NLTK来进行分词。
阅读全文