统计《三国演义》中人物的出场次数Python
时间: 2023-05-17 14:06:49 浏览: 48
可以使用Python来统计《三国演义》中人物的出场次数。首先需要将小说文本进行处理,将每个章节的内容提取出来,然后使用正则表达式或者分词工具将人物名称提取出来,最后统计每个人物在整个小说中出现的次数。
以下是一个简单的Python代码示例:
```python
import re
# 读取小说文本
with open('san-guo-yan-yi.txt', 'r', encoding='utf-8') as f:
novel = f.read()
# 将小说按章节分割
chapters = re.split(r'\n第.+回\n', novel)[1:]
# 统计人物出现次数
characters = {}
for chapter in chapters:
# 使用正则表达式提取人物名称
names = re.findall(r'[\u4e00-\u9fa5]{2,4}(?:·[\u4e00-\u9fa5]{2,4})*', chapter)
for name in names:
if name in characters:
characters[name] += 1
else:
characters[name] = 1
# 按出现次数排序
sorted_characters = sorted(characters.items(), key=lambda x: x[1], reverse=True)
# 输出前10个人物及其出现次数
for name, count in sorted_characters[:10]:
print(name, count)
```
注意:这个代码示例只是一个简单的实现,可能存在一些问题,比如无法处理人物名称中的别名、重名等情况。如果需要更精确的结果,可以使用更复杂的算法和工具。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)