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 相关文章推荐
python实现监控windows服务并自动启动服务示例
Apr 17 Python
Python while、for、生成器、列表推导等语句的执行效率测试
Jun 03 Python
Python中pygame安装方法图文详解
Nov 11 Python
读写json中文ASCII乱码问题的解决方法
Nov 05 Python
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
May 25 Python
Python列表推导式、字典推导式与集合推导式用法实例分析
Feb 07 Python
详谈Pandas中iloc和loc以及ix的区别
Jun 08 Python
Python实现爬虫抓取与读写、追加到excel文件操作示例
Jun 27 Python
解决pycharm工程启动卡住没反应的问题
Jan 19 Python
python面向对象实现名片管理系统文件版
Apr 26 Python
Python中py文件转换成exe可执行文件的方法
Jun 14 Python
python3代码中实现加法重载的实例
Dec 03 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 上传文件大小限制
2009/07/05 PHP
php 获取远程网页内容的函数
2009/09/08 PHP
php检测图片木马多进制编程实践
2013/04/11 PHP
php支付宝在线支付接口开发教程
2016/09/19 PHP
PHP数据的提交与过滤基本操作实例详解
2016/11/11 PHP
javascript编程起步(第七课)
2007/01/10 Javascript
javascript下4个跨浏览器必备的函数
2010/03/07 Javascript
探讨js中的双感叹号判断
2013/11/11 Javascript
flash遮住div问题的正确解决方法
2014/02/27 Javascript
JavaScript实现定时隐藏与显示图片的方法
2015/08/06 Javascript
JS中的二叉树遍历详解
2016/03/18 Javascript
使用three.js 画渐变的直线
2016/06/05 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
2016/08/17 Javascript
利用vue实现模态框组件
2016/12/19 Javascript
Vue渲染函数详解
2017/09/15 Javascript
JQuery中queue方法用法示例
2019/01/31 jQuery
Vue最新防抖方案(必看篇)
2019/10/30 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
2020/05/12 Javascript
JS如何定义用字符串拼接的变量
2020/07/11 Javascript
Tensorflow之Saver的用法详解
2018/04/23 Python
使用python Telnet远程登录执行程序的方法
2019/01/26 Python
Python中栈、队列与优先级队列的实现方法
2019/06/30 Python
python自动识别文本编码格式代码
2019/12/26 Python
高中毕业生自我鉴定范文
2013/09/26 职场文书
北大自主招生自荐信
2013/10/19 职场文书
俄语翻译实习生的自我评价分享
2013/11/06 职场文书
法律专业推荐信范文
2013/11/29 职场文书
外贸英语专业求职信范文
2013/12/25 职场文书
技术副厂长岗位职责
2013/12/26 职场文书
乡镇挂职心得体会
2014/09/04 职场文书
软环境建设心得体会
2014/09/09 职场文书
消防隐患整改通知书
2015/04/22 职场文书
2015年新农村建设工作总结
2015/05/22 职场文书
三八妇女节新闻稿
2015/07/17 职场文书
承诺书应该怎么写?
2019/09/10 职场文书
Python进行区间取值案例讲解
2021/08/02 Python