统计“唐诗三百首”中诗人出现的次数用Python统计
时间: 2024-05-09 14:19:25 浏览: 321
假设已经将“唐诗三百首”保存在了一个文本文件中,可以按照以下步骤进行统计:
1. 读取文本文件中的所有诗句,并将它们按照诗人分组存储。
2. 遍历每个诗人的诗句列表,统计每个诗人出现的次数。
3. 输出每个诗人及其出现次数。
下面是一个示例代码:
```python
import re
# 读取文本文件中的所有诗句,并将它们按照诗人分组存储
poems = {}
with open('tangshi300.txt', 'r', encoding='utf-8') as f:
for line in f:
# 使用正则表达式匹配诗句中的诗人名字
match = re.search('【(.+?)】', line)
if match:
poet = match.group(1)
if poet not in poems:
poems[poet] = []
# 将诗句添加到对应诗人的诗句列表中
poems[poet].append(line.strip())
# 遍历每个诗人的诗句列表,统计每个诗人出现的次数
counts = {}
for poet, lines in poems.items():
counts[poet] = len(lines)
# 输出每个诗人及其出现次数
for poet, count in sorted(counts.items(), key=lambda x: x[1], reverse=True):
print(poet, count)
```
运行后,可以得到每个诗人及其出现次数的输出结果。
阅读全文