python第四次作业

本文介绍了如何使用Python进行文本处理,包括从文件读取文本、去除标点符号、使用jieba分词进行中文文本的分词处理,并统计词频,最后输出词频最高的前几项。同时,也展示了英文文本的预处理、单词提取和词频统计的方法。





q = open('遇见.txt', 'r', encoding='utf-8').read() wordsls = jieba.lcut(q) wcdict = {} for word in wordsls: if len(word) == 1: continue else: wcdict[word] = wcdict.get(word, 0) + 1 wcls = list(wcdict.items()) wcls.sort(key=lambda x: x[1], reverse=True) print(wcls) for i in range(7): print(wcls[i])

  

 

#准备utf-8编码的文本文件,通过文件读取字符串str
fo=open('because of you.txt','r',encoding='utf-8')
stra = fo.read().lower()
fo.close()
print(stra)

sep=',.;!'
for ch in sep:
    stra = stra.replace(ch,'')#进行预处理,清除掉sep中存在的标点符号
print(stra)

strList=stra.split('')
print(len(strList),strList)#分解提取单词,转化为列表list

strSet = set(strList)
print(len(strSet),strSet)#转化为集合

strDict={}
for world in strSet:
    strDict[world] = strList.count(world)
print(len(strDict),strDict)#转化为字典,计算上一个集合中每个单词出现的次数

wcList=list(strDict.items())
print(wcList)#将字典中的目录转化为列表输出
wcList.sort(key=lambda x:x[1],reverse= True)
print(wcList) #按降序输出

e = {'a','the','an','and','i','or','of'}
strSet = strSet - e
print(len(strSet),strSet) #排除语法型词汇,代词、冠词、连词等无语义词

for i in range(20):
    print(wcList[i]) #TOP20输出

  

 

 

 

转载于:https://www.cnblogs.com/asyxhs/p/9790103.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值