从文件in.txt(在作业附件里面)读取信息,文件里的单词中间由空格隔开,统计每个单词出现的次数,从大到小排序后输出到文件out.txt 【输入形式】 文件里存储了多个单词,有重复,空格隔开 【输出形式】 从大到小输出单词及其出现的次数,次数一样的单词按字符串比较从小到大排序 【输入样例】in.txt文件里面的数据如下所示: hello world python hello word file number file file python
时间: 2024-02-22 17:56:02 浏览: 60
以下是实现该功能的Python代码:
```python
# 读取文件内容
with open('in.txt', 'r') as f:
content = f.read()
# 将内容转换为单词列表
words = content.split()
# 统计每个单词出现的次数
word_count = {}
for word in words:
if word not in word_count:
word_count[word] = 1
else:
word_count[word] += 1
# 将单词及其出现次数转换为元组列表,并按次数从大到小、字符串从小到大排序
sorted_word_count = sorted(word_count.items(), key=lambda x: (-x[1], x[0]))
# 将排序后的结果输出到文件out.txt
with open('out.txt', 'w') as f:
for word, count in sorted_word_count:
f.write(f'{word} {count}\n')
```
这段代码首先读取文件内容,将其转换为单词列表,然后统计每个单词出现的次数,并将单词及其出现次数转换为元组列表。接着,使用`sorted()`函数按次数从大到小、字符串从小到大排序。最后,将排序后的结果输出到文件out.txt中。
阅读全文