公爵 侯爵 伯爵 子爵 男爵

大小依次为:公 侯 伯 子 男

 

公爵Duke,
侯爵marquis ,
伯爵count(earl),(count是欧洲大陆的说法,earl为英国的说法)
子爵viscount,
男爵baron

好的,我理解了你的要求。首先,需要准备好《战争与和平》的中文文本文件,然后安装jieba和matplotlib库。接下来,我们可以使用以下代码实现你的需求: ```python import jieba from collections import Counter import matplotlib.pyplot as plt # 读取文本文件 with open('war_and_peace.txt', 'r', encoding='utf-8') as f: text = f.read() # 对文本进行分词 words = jieba.cut(text) # 统计人名出现次数 names = ['安德烈', '娜塔莎', '皮埃尔'] name_counts = Counter() for word in words: if word in names: if word == '公爵': word = '安德烈' elif word == '小姐': word = '娜塔莎' elif word == '伯爵': word = '皮埃尔' name_counts[word] += 1 # 绘制柱形图 plt.bar(name_counts.keys(), name_counts.values()) plt.title('《战争与和平》中出现最多的人名TOP10') plt.xlabel('人名') plt.ylabel('出现次数') plt.show() ``` 需要注意的是,这里我假设文本文件名为`war_and_peace.txt`,并且该文件需要放在当前工作目录下。如果实际情况不同,请根据情况修改代码中相应部分。 运行以上代码,就可以得到一个柱形图,图中展示了《战争与和平》中出现最多的10个人名及其出现次数。 如果你想要绘制饼图,可以使用以下代码: ```python # 绘制饼图 plt.pie(name_counts.values(), labels=name_counts.keys(), autopct='%1.1f%%') plt.title('《战争与和平》中出现最多的人名') plt.show() ``` 这样就可以得到一个饼图,图中展示了《战争与和平》中出现最多的人名及其出现比例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值