Python统计文本词汇出现次数的实例代码


Posted in Python onFebruary 27, 2020

问题描述

有时在遇到一个文本需要统计文本内词汇的次数 的时候 ,可以用一个简单的python程序来实现。

解决方案

首先需要的是一个文本文件(.txt)格式(文本内词汇以空格分隔),因为需要的是一个程序,所以要考虑如何将文件打开而不是采用复制粘贴的方式。这时就要用到open()的方式来打开文档,然后通过read()读取其中内容,再将词汇作为key,出现次数作为values存入字典。

Python统计文本词汇出现次数的实例代码

图 1 txt文件内容

再通过open和read函数来读取文件:

open_file=open("text.txt")
file_txt=open_file.read()

然后再创建一个空字典,将所有出现的每个词汇作为key保存到字典中,对文本从开始到结束,循环处理每个词汇,并将词汇设置为一个字典的key,将其value设置为1,如果已经存在该词汇的key,说明该词汇已经使用过,就将value累积加1。

代码示例:

def wordcount(readtxt):
readlist = readtxt.split()
dict1={}
for every_world in readlist:
if every_world in dict1:
dict1[every_world] += 1
else:
dict1[every_world] = 1
return dict1
print(wordcount(file_txt))

这里加了def函数把该程序封装成一个函数。
最后输出得到词汇出现的字典:

Python统计文本词汇出现次数的实例代码

图 2 形成字典

ps:下面看下python统计文本中每个单词出现的次数

1.python统计文本中每个单词出现的次数:

#coding=utf-8
__author__ = 'zcg'
import collections
import os
with open('abc.txt') as file1:#打开文本文件
 str1=file1.read().split(' ')#将文章按照空格划分开
print "原文本:\n %s"% str1
print "\n各单词出现的次数:\n %s" % collections.Counter(str1)
print collections.Counter(str1)['a']#以字典的形式存储,每个字符对应的键值就是在文本中出现的次数

2.python编写生成序列化:

__author__ = 'zcg'
#endcoding utf-8
import string,random
field=string.letters+string.digits
def getRandom():
 return "".join(random.sample(field,4))
def concatenate(group):
 return "-".join([getRandom() for i in range(group)])
def generate(n):
 return [concatenate(4) for i in range(n)]
if __name__ =='__main__':
 print generate(10)

3.遍历excel表格中的所有数据:

__author__ = 'Administrator'
import xlrd
workbook = xlrd.open_workbook('config.xlsx')
print "There are {} sheets in the workbook".format(workbook.nsheets)
for booksheet in workbook.sheets():
 for col in xrange(booksheet.ncols):
 for row in xrange(booksheet.nrows):
 value=booksheet.cell(row,col).value
 print value

其中xlrd需要百度下载导入这个模块到python中

4.将表格中的数据整理成lua类型的一个格式

#coding=utf-8
__author__ = 'zcg'
#2017 9/26
import xlrd
fileOutput = open('Configs.lua','w')
writeData="--@author:zcg\n\n\n"
workbook = xlrd.open_workbook('config.xlsx')
print "There are {} sheets in the workbook".format(workbook.nsheets)
for booksheet in workbook.sheets():
 writeData = writeData+'AT' +booksheet.name+' ={\n'
 for col in xrange(booksheet.ncols):
 for row in xrange(booksheet.nrows):
 value = booksheet.cell(row,col).value
 if row ==0:
 writeData = writeData+'\t'+'["'+value+'"]'+'='+'{'
 else:
 writeData=writeData+'"'+str(booksheet.cell(row,col).value)+'", '
 else:
 writeData=writeData+'},\n'
 else:
 writeData=writeData+'}\n\n'
else :
 fileOutput.write(writeData)
fileOutput.close()

总结

到此这篇关于Python统计文本词汇出现次数的实例代码的文章就介绍到这了,更多相关Python统计文本词汇出现次数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
py中的目录与文件判别代码
Jul 16 Python
使用graphics.py实现2048小游戏
Mar 10 Python
Python中super()函数简介及用法分享
Jul 11 Python
python如何把嵌套列表转变成普通列表
Mar 20 Python
完美解决Pycharm无法导入包的问题 Unresolved reference
May 18 Python
python pcm音频添加头转成Wav格式文件的方法
Jan 09 Python
python tkinter基本属性详解
Sep 16 Python
python实现的汉诺塔算法示例
Oct 23 Python
Python获取统计自己的qq群成员信息的方法
Nov 15 Python
python 实现return返回多个值
Nov 19 Python
python 实现方阵的对角线遍历示例
Nov 29 Python
python 绘制场景热力图的示例
Sep 23 Python
浅谈python输出列表元素的所有排列形式
Feb 26 #Python
python GUI库图形界面开发之PyQt5 UI主线程与耗时线程分离详细方法实例
Feb 26 #Python
python——全排列数的生成方式
Feb 26 #Python
python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件
Feb 26 #Python
python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例
Feb 26 #Python
python自动点赞功能的实现思路
Feb 26 #Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
Feb 26 #Python
You might like
用PHP和ACCESS写聊天室(三)
2006/10/09 PHP
PHP Squid中可缓存的动态网页设计
2008/09/17 PHP
纯php打造的tab选项卡效果代码(不用js)
2010/12/29 PHP
php多文件上传实现代码
2014/02/20 PHP
php 的反射详解及示例代码
2016/08/25 PHP
javascript YUI 读码日记之 YAHOO.util.Dom - Part.4
2008/03/22 Javascript
使用jquery给input和textarea设定ie中的focus
2008/05/29 Javascript
Jquery图形报表插件 jqplot简介及参数详解
2012/10/10 Javascript
jquery简单瀑布流实现原理及ie8下测试代码
2013/01/23 Javascript
JS之Date对象和获取系统当前时间详解
2014/01/13 Javascript
利用浏览器全屏api实现js全屏
2014/01/16 Javascript
关于页面嵌入swf覆盖div层的问题的解决方法
2014/02/11 Javascript
AngularJs实现ng1.3+表单验证
2015/12/10 Javascript
BootStrap点击下拉菜单项后显示一个新的输入框实现代码
2016/05/16 Javascript
AngularJS自定义插件实现网站用户引导功能示例
2016/11/07 Javascript
AngularJS实现给动态生成的元素绑定事件的方法
2016/12/14 Javascript
浅谈ECMAScript 中的Array类型
2019/06/10 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
2019/09/20 Javascript
javascript中layim之查找好友查找群组
2021/02/06 Javascript
web.py 十分钟创建简易博客实现代码
2016/04/22 Python
python实现数据写入excel表格
2018/03/25 Python
python logging.info在终端没输出的解决
2020/05/12 Python
番木瓜健康和保健产品第一大制造商:Herbal Papaya
2017/04/25 全球购物
最耐用行李箱,一箱永流传:Briggs & Riley(全球终身保修)
2017/12/07 全球购物
纽约和芝加哥当天送花:Ode à la Rose
2019/07/05 全球购物
英国领先的独立酒精饮料零售商:DrinkSupermarket
2021/01/13 全球购物
几个Linux面试题笔试题
2012/12/01 面试题
英语专业毕业生自我鉴定
2013/11/09 职场文书
网页设计个人找工作求职信
2013/11/28 职场文书
收银出纳员岗位职责
2014/02/23 职场文书
乡镇保密工作责任书
2014/07/28 职场文书
青年标兵事迹材料
2014/08/16 职场文书
2014年行政助理工作总结
2014/11/19 职场文书
简历自荐信范文
2015/03/09 职场文书
公务员处分决定书
2015/06/25 职场文书
某学校的2019年度工作报告范本
2019/10/11 职场文书