怎么 利用python实现词频统计功能
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章给大家介绍怎么 利用python实现词频统计功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。功能要求这是我们老师的作业 代码中都有注释 要求 词频统计软件:1)从文本中
千家信息网最后更新 2026年11月04日怎么 利用python实现词频统计功能
这篇文章给大家介绍怎么 利用python实现词频统计功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
功能要求
这是我们老师的作业 代码中都有注释 要求 词频统计软件:
1)从文本中读入数据:(文件的输入输出)
2)不区分大小写,去除特殊字符。
3) 统计单词 例如:about :10 并统计总共多少单词
4)对单词排序。出现次数
5)输出词频最高的10个单词和次数
6)把统计结果存入文本
方法如下
1.文件的读取,区分大小写,去除特殊字符
import re def getword(): # 读取文件 f=open('read.txt','r',encoding='utf-8') # 将大写转化成小写 word=f.read().lower() # 关闭文件 f.close() #利用正则除去特殊字符 |\符+ list=re.split('\s+|\,+|\.+|\!+|\:+|\?+|\;+|\(+|\)+|\-+|\_+|\=+|\++|\"+|\、+|\/+|\{+|\}+|\"+|\:+|\。+|\"+|\[+|\]+|\【+|\】+|\-+|\%+|\"+',word) # 遍历列表 去除列表中的空格 i = 0 while i < len(list): if list[i] == '': list.remove(list[i]) i -= 1 i += 1 # for a in list: # if a == "": # list.remove(a) #用for循环的话如果存在多个空字符串 其列表会随时发生变化,导致无法正常删除空字符串 所以在使用for…in循环遍历列表时,最好不要对元素进行增删操作 # 对于others'优化 如果最后一个字符是'就将'其去掉 for i in range(len(list)): l=list[i] if list[i][-1] == "'": list[i] = list[i][:-1] return list2. 统计,排序
from getfilewords import getword def statistics(): dict={} #定义一个空的字典,在后面的运算中逐步添加数据 words=getword() for word in words: #遍历整个列表 if word in dict.keys(): #判断当前单词是否已经存在 dict.keys()是已存进字典中的单词 # 补充:keys() 方法用于返回字典中的所有键; # values() 方法用于返回字典中所有键对应的值; #详情见Test1 dict[word]=dict[word]+1 #在当前单词的个数上加 1 else: dict[word]=1 #当前单词第一次出现时 会把单词写入dict字典里 格式为 '单词'=1#排序 w_order=sorted(dict.items(),key=lambda x:x[1],reverse=True)# print(dict.items())# dict.items()返回的是列表# 按字典集合中,每一个元组的第二个元素排列。# sorted会对dict.items()这个list进行遍历,把list中的每一个元素,也就是每一个tuple()当做x传入匿名函数lambda x:x[1],函数返回值为x[1]# reverse属性True为降序 False为升序 return w_order #返回排序后的列表3.结果写入文本
from WordStatistics import statisticsdef writefile(): w_order=statistics() f = open('result.txt', 'w',encoding='utf-8') print("文章单词总个数:",+len(getword()),file=f) print("文章单词总个数:", +len(getword())) # 写入文件 print("词频最高的10个单词和次数",file=f) print("词频最高的10个单词和次数") w_order10=w_order[:10]#将列表的前十位提取并且遍历 输出key(单词)和values(次数) for key,values in w_order10: print(key,':',values,file=f) print(key, ':', values) #遍历列表中的所有数据 print("统计结果",file=f) for key,values in w_order: print(key,':',values,file=f) f.close()#关闭文件4.程序入口
import os from writefile import writefile print("词频统计软件")print("正在统计中。。。")print("统计成功,结果保存到result.txt")writefile()print("程序运行结束")os.system("pause")5.运行截图 这是需要统计的文本
运行程序

运行结果
关于怎么 利用python实现词频统计功能就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
单词
统计
词频
字典
文件
次数
结果
字符
文本
排序
运行
功能
最高
特殊
个数
元素
数据
文章
方法
程序
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技创新与互联网经济
互联网巨头科技公司
科技服务与互联网
紫鲸互联网科技
互联网金融科技平台
互联网科技美容
大白互联网科技
安控科技rtu产品工业互联网
互联网科技实习生岗位职责
银川新华互联网科技职业技术培训学校图片
移动互联网科技股
千方科技属于互联网企业吗
苏州铭阳互联网科技有限公司
互联网科技大奖都有哪些公司
想开互联网科技公司怎么样
国大互联网教育科技有限公司工作
为客找房互联网科技公司怎么样
江苏互联网智能科技软件
半导体行业属于互联网高科技类吗
互联网科技大佬云集
科技信息互联网
金融科技创新监管互联网金融
礼当家互联网科技
顺玮阁互联网科技
联恩商钥互联网科技有限公司
互联网对科技的发展
科技互联网大厂
昊天互联网科技有限公司
35岁以上互联网科技行业
10位科技互联网大佬