俗话说,‘熟读唐诗三百首,不会吟诗也会吟’,请分析附件的唐诗300首文本文件。 完成下列功能:(部分功能需要使用jieba第三方库) 统计每首诗歌的作者,如果第一行输入‘作者’,第二行则输入一个整...
时间: 2023-12-14 11:02:01 浏览: 26
好的,让我来回答你的问题。
关于唐诗300首文本文件的分析,我们可以通过Python编程语言来完成。以下是实现该功能的代码:
```python
import jieba
# 读取文件
with open('tangshi300.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
# 统计每首诗歌的作者
authors = {}
for i in range(len(lines)):
if i % 2 == 0: # 诗歌标题所在行
title = lines[i].strip()
author = lines[i+1].strip().replace('〔', '').replace('〕', '')
authors[title] = author
# 输出结果
print('每首诗歌的作者:')
for title, author in authors.items():
print(title, author)
# 统计指定作者的诗歌数量
author_name = input('请输入作者名字:')
if author_name == '作者':
author_name = input('请输入作者名字:')
count = 0
for author in authors.values():
if author == author_name:
count += 1
# 输出结果
print(f'{author_name}的诗歌数量为:{count}')
```
首先,我们使用`with open()`语句读取唐诗300首的文本文件,并将每行的内容保存到一个列表中。然后,我们使用循环遍历每行的内容,找出每首诗歌的标题和作者,并将其保存到一个字典中。最后,我们可以通过输入指定作者的名字来统计该作者的诗歌数量。
需要注意的是,如果输入的第一行为“作者”,则需要再次输入作者的名字。同时,为了准确统计诗歌数量,我们需要将作者名字中的“〔”和“〕”字符去掉。另外,为了方便分词,我们可以使用`jieba`第三方库对诗歌内容进行分词处理。