《命运》是著名科幻作家倪匡的科幻作品。这里给出一个 《命运》的网络版本部分内容,文件名为“命运-网络版.txt”。 请编写程序,对这个文本中出现的字符进行统计,字符 与出现次数之间用冒号:分隔,将前10个最常用字符分别 输出保存到“命运-字符统计.txt”。 注意: 不统计字符包含 \n ,。!:?
时间: 2024-03-06 16:47:58 浏览: 21
好的,我已经明白您的问题了。以下是可以解决您问题的 Python 代码:
```python
with open('命运-网络版.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 统计字符出现次数
char_dict = {}
for char in text:
if char not in '\n,。!:?' and char.isalnum():
char_dict[char] = char_dict.get(char, 0) + 1
# 按照出现次数从大到小排序
sorted_char = sorted(char_dict.items(), key=lambda x: x[1], reverse=True)
# 输出前10个最常用字符到文件
with open('命运-字符统计.txt', 'w', encoding='utf-8') as f:
for char, count in sorted_char[:10]:
f.write(char + ':' + str(count) + '\n')
```
这段代码首先读取文件内容,然后遍历每个字符,对非标点符号和换行符进行计数,并保存在字典 `char_dict` 中。
然后使用 `sorted` 函数对 `char_dict` 中的字符按照出现次数从大到小排序。
最后,将前10个最常用字符写入到文件“命运-字符统计.txt”中。
注意,如果您使用的是 Python 2 版本,请将文件打开方式中的 `encoding='utf-8'` 去掉。