Python统计西游记妖怪出场次数(使用jieba分词)

import jieba
monsters = ['国丈', '虎力大仙', '赛太岁', '鹿力大仙', '玉面公主', '白衣秀士',
 '九头虫', '黄风怪', '羊力大仙', '九灵元圣', '辟尘大王', '凌虚子',
 '黑鱼精', '如意真仙', '六耳猕猴', '美后', '黄狮精',
 '辟寒大王', '特处士', '老鼋', '寅将军', '辟暑大王', '灵感大王', '熊山君']

temp_list = []

f = open(r"西游记.txt", encoding="utf-8", mode='r')
for line in f.readlines():
    for each in line:
        if each in [' ', ' ', '\t', '\n', '。', ',', '(', ')', '/', '-',
                    '(', ')', ':', '□', '?', '!', '[', ']', ':',
                    '《', '》', '、', ';', '“', '”', '……']:
            continue
        else:
            temp_list.append(each.strip())
temp_list2 = "".join(temp_list)
counts = {} 
for monster in monsters:
    counts[monster] = temp_list2.count(monster)

items = list(counts.items())  # 将键值对转换成列表
items.sort(key=lambda x: x[1], reverse=True)  # 根据词语出现的次数进行从大到小排序

for i in range(20):
    word, count = items[i]
    print("{0:<5}{1:>5}".format(word, count))


f.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值