python统计小说人物出现次数
时间: 2023-07-01 10:28:16 浏览: 332
Python-[jieba库应用]-统计水浒传中人物出现次数
5星 · 资源好评率100%
可以使用Python中的字典来统计小说人物出现次数。具体步骤如下:
1. 读取小说文本文件,将其内容存储为一个字符串。
2. 使用正则表达式或其他方法,提取出小说中所有的人物名字,将其存储为一个列表。
3. 遍历人物名字列表,使用字典来统计每个人物出现的次数。
4. 最后按照出现次数从高到低排序,并输出结果。
下面是一个简单的实现示例:
```python
import re
# 读取小说文本文件
with open('novel.txt', 'r', encoding='utf-8') as f:
novel = f.read()
# 提取人物名字
pattern = r'[\u4e00-\u9fa5]{2,4}(?:·[\u4e00-\u9fa5]{2,4})*' # 正则表达式
names = re.findall(pattern, novel)
# 统计人物出现次数
counts = {}
for name in names:
counts[name] = counts.get(name, 0) + 1
# 按照出现次数排序
sorted_counts = sorted(counts.items(), key=lambda x: x[1], reverse=True)
# 输出结果
for name, count in sorted_counts:
print(f'{name}: {count}')
```
其中,`novel.txt` 是小说文本文件的路径,`pattern` 是用于提取人物名字的正则表达式。在示例中,我们使用了一个简单的正则表达式,只考虑了中文名字,可能无法覆盖所有情况。如果需要更准确的结果,可以根据具体的小说内容进行调整。
阅读全文