python123 第四次作业答案_python第四次作业

这篇博客展示了如何使用Python进行文本处理,包括读取文本、使用jieba进行分词、统计词频、去除标点符号、转换为小写、过滤常见无语义词汇,并输出出现频率最高的20个词。

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

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])

e5dfd5e3aef662b3e547c4b2fd4660a0.png

#准备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输出

04edb27c9252fecff97cce3899a024fd.png

9504cefce177582db7d8f9aa503e2829.png

c756ea102f3ffb71ad200049358b3fc1.png

0c2894f29fbaab8093693643efb381a8.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值