【20210423】jieba库返回《红楼梦》前十名人物出场次序

该代码利用jieba库对《红楼梦》文本进行分词,并排除常见词汇,统计了各人物出场次数。结果显示了排名前十的人物及其出场数,其中可能包括‘凤姐’等关键人物。需要注意的是,excludes列表中的人名如‘老爷’、‘平儿’可能应被考虑为人名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用jieba库统计红楼梦中前十位人物出场次序

1:代码
import jieba
txt = open(‘D:\studydata\红楼梦.txt’,“r”,encoding=‘utf-8’).read()
words = jieba.lcut(txt) #将中文进行分词
excludes = {“什么”,“一个”,“我们”,“那里”,“你们”,“如今”,
“说道”,“知道”,“老太太”,“起来”,“姑娘”,“这里”,
“出来”,“他们”,“众人”,“自己”,“一面”,“太太”,
“只见”,“怎么”,“奶奶”,“两个”,“没有”,“不是”,
“不知”,“这个”,“听见”,“这样”,“进来”,“咱们”,
“告诉”,“就是”,“东西”,“平儿”,“回来”,“只是”,
“大家”,“老爷”,“只得”,“丫头”,“这些”,“不敢”,
“出去”,“所以”,“不过”,“的话”,“不好”,“姐姐”}
counts = {}
for word in words:
if len(word) == 1:
continue
elif word == ‘凤姐’ or word == ‘凤姐儿’:
rword = ‘凤姐’
else:
rword = word
counts[rword] = counts.get(rword,0) + 1
for word in excludes:
del counts[word]
items = list(counts.items())
items.sort(key=lambda x:x[1],reverse=True)
print("《红楼梦》著作中人物出场统计(前十名)为:")
for i in range(10):
word,count = items[i]
print("{0:<10}{1:>5}".format(word,count))
2:结果截图
在这里插入图片描述
备注:本人没看过红楼梦,所以不太清楚excludes中的是否是人名,大家认为老爷或者平儿也是人名的话可以把excludes中的老爷和平儿删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值