首页 炼丹房 帖子详情
【百度领航团】python读取文件并分析单词词频
收藏
快速回复
炼丹房 文章新手上路 768 2
【百度领航团】python读取文件并分析单词词频
收藏
快速回复
炼丹房 文章新手上路 768 2

Python小作业-读取txt文件并分析单词的词频

molly老师留的作业,这是课程链接(https://aistudio.baidu.com/aistudio/course/introduce/7073)

python的基本语法。这是三天学习下来最后总结的小作业。
作业内容是分析储存在一个txt文件里的英语四级卷子,分析单词的词频。

整体思路:先读取文件,再清洗数据,去除所有无关数字,符号。然后把数据变成不重复数据,最后在原文统计单词个数。

import re #引入正则库,用来处理数据为统一格式
def get_artical(artical_path): #读取文件,read函数打开整个文件为字符串
with open(artical_path) as fr:
data = fr.read()
return data
data=get_artical(r'C:\Users\Administrator\PycharmProjects\作业\artical.txt')

data=re.sub(r'[\n.,!?\'\";/)(-]', ' ', data) #利用正则的sub一次替换多个目标为空格,方便后续统一处理
data=re.sub(r'[0-9]', ' ', data) #处理阿拉伯数字
data=data.lower() #把全部文本处理为小写
key_words=re.split(' ',data) #用re的split分割字符串为列表,利用空格为标记分开
lable=set(key_words) #把列表强制转换为集合,一次性去重,作为标签在后面使用
lable.remove('') #去除标签里的空格,空格又不查找QAQ
dict={} #新建一个字典,记录单词和单词频率
for item in lable: #遍历所有标签
dict[item] = key_words.count(item) #每个标签在原文里用count函数计数
print(dict)

整体思路和代码其实很简单,注意细节即可

0
收藏
回复
全部评论(2)
时间顺序
AIStudio810259
#2 回复于2021-02

正则用的溜啊

0
回复
AIStudio810260
#3 回复于2021-02

很棒

0
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户