python读取文件并分析单词词频

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

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)

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