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实现调用其他python脚本的方法
Oct 05 Python
Python smallseg分词用法实例分析
May 28 Python
python的keyword模块用法实例分析
Jun 30 Python
Python连接DB2数据库
Aug 27 Python
python 链接和操作 memcache方法
Mar 04 Python
python简单图片操作:打开\显示\保存图像方法介绍
Nov 23 Python
儿童学习python的一些小技巧
May 27 Python
python计算两个地址之间的距离方法
Jun 09 Python
python sort、sort_index方法代码实例
Mar 28 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
Aug 06 Python
TensorFlow——Checkpoint为模型添加检查点的实例
Jan 21 Python
Python二元算术运算常用方法解析
Sep 15 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
星际争霸任务指南——人族
2020/03/04 星际争霸
使用MaxMind 根据IP地址对访问者定位
2006/10/09 PHP
深入解析php之sphinx
2013/05/15 PHP
PHP伪静态Rewrite设置之APACHE篇
2014/07/30 PHP
php去除数组中重复数据
2014/11/18 PHP
PHP中捕获超时事件的方法实例
2015/02/12 PHP
php parse_str() 函数的定义和用法
2016/05/23 PHP
基于php判断客户端类型
2016/10/14 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
docker-compose部署php项目实例详解
2019/07/30 PHP
JS网络游戏-(模拟城市webgame)提供的一些例子下载
2007/10/14 Javascript
JS从一组数据中找到指定的单条数据的方法
2016/06/02 Javascript
BootStrap无限级分类(无限极分类封装版)
2016/08/26 Javascript
JS防止网页被嵌入iframe框架的方法分析
2016/09/13 Javascript
AngularJS 2.0入门权威指南
2016/10/08 Javascript
JS 终止执行的实现方法
2016/11/24 Javascript
AngularJS框架的ng-app指令与自动加载实现方法分析
2017/01/04 Javascript
vue购物车插件编写代码
2017/11/27 Javascript
vue使用axios实现文件上传进度的实时更新详解
2017/12/20 Javascript
微信小程序点餐系统开发常见问题汇总
2019/08/06 Javascript
Layui数据表格判断编辑输入的值,是否为我需要的类型详解
2019/10/26 Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
2019/11/13 Javascript
js实现微信聊天界面
2020/08/09 Javascript
[02:03]永远的信仰DOTA2 中国军团历届国际邀请赛回顾
2016/06/26 DOTA
深入理解Python中的*重复运算符
2017/10/28 Python
Python定时器实例代码
2017/11/01 Python
修改默认的pip版本为对应python2.7的方法
2018/11/06 Python
pycharm通过ssh连接远程服务器教程
2020/02/12 Python
监理员的岗位职责
2013/11/13 职场文书
档案接收函
2014/01/13 职场文书
大学生党员自我剖析材料
2014/10/06 职场文书
2014年村计划生育工作总结
2014/11/14 职场文书
小班上学期幼儿评语
2014/12/30 职场文书
财政局长个人总结
2015/03/04 职场文书
赢在执行观后感
2015/06/16 职场文书
学校标语口号大全
2015/12/26 职场文书