中文词频统计

中文词频统计

需要下载jieba

import jieba
with open('threekingdoms.txt','r',encoding='UTF-8') as fr:
    s=fr.read()
ls=jieba.lcut(s)
excludes=['二人','不可','荆州','却说']
counts={}
for word in ls:
    if len(word)==1:
        continue
    elif word=='诸葛亮' or word=='孔明曰':
        rword='孔明'
    elif word=='关公' or word=='云长':
        rword='关羽'
    elif word=='玄德' or word=='玄德曰':
        rword='刘备'
    elif word=='孟德' or word=='丞相':
        rword='曹操'
    else:
        rword=word    
    counts[rword]=counts.get(rword,0)+1
#去掉一些不是要找的    
for word in excludes:
    del counts[word]    
lst=list(counts.items())
lst.sort(key=lambda x:x[1],reverse=True)
#排序,输出前十五个人物
for i in range(15):
    key,value=lst[i]
    print('{0:<5}{1:>5}'.format(key,value))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值