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编写android截屏脚本双击运行即可
Jul 21 Python
python模拟enum枚举类型的方法小结
Apr 30 Python
两个使用Python脚本操作文件的小示例分享
Aug 27 Python
Python实现约瑟夫环问题的方法
May 03 Python
python实现给微信公众号发送消息的方法
Jun 30 Python
详解PyTorch批训练及优化器比较
Apr 28 Python
django之跨表查询及添加记录的示例代码
Oct 16 Python
pycharm使用matplotlib.pyplot不显示图形的解决方法
Oct 28 Python
利用Python校准本地时间的方法教程
Oct 31 Python
python cv2读取rtsp实时码流按时生成连续视频文件方式
Dec 25 Python
Python yield生成器和return对比代码实例
Apr 20 Python
Python实现SMTP邮件发送
Jun 16 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
Zend的Registry机制的使用说明
2013/05/02 PHP
PHP mysql与mysqli事务使用说明 分享
2013/08/17 PHP
ThinkPHP实现批量删除数据的代码实例
2014/07/02 PHP
[原创]php获取数组中键值最大数组项的索引值
2015/03/17 PHP
PHP实现读取文件夹及批量重命名文件操作示例
2019/04/15 PHP
php反射学习之依赖注入示例
2019/06/14 PHP
php7连接MySQL实现简易查询程序的方法
2020/10/13 PHP
Jquery公告滚动+AJAX后台得到数据
2011/04/14 Javascript
js replace正则表达式应用案例讲解
2013/01/17 Javascript
实现动画效果核心方式的js代码
2013/09/27 Javascript
js 获取元素下面所有li的两种方法
2014/04/14 Javascript
DOM基础教程之模型中的模型节点
2015/01/19 Javascript
使用DNode实现php和nodejs之间通信的简单实例
2015/07/06 NodeJs
详解Javascript事件驱动编程
2016/01/03 Javascript
浅谈Node.js:理解stream
2016/12/08 Javascript
详解webpack2+React 实例demo
2017/09/11 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【矩形情况】
2018/12/13 Javascript
如何正确理解vue中的key详解
2019/11/02 Javascript
vue+iview使用树形控件的具体使用
2020/11/02 Javascript
Python内置函数dir详解
2015/04/14 Python
21行Python代码实现拼写检查器
2016/01/25 Python
Python使用装饰器进行django开发实例代码
2018/02/06 Python
python 2.7 检测一个网页是否能正常访问的方法
2018/12/26 Python
Django之使用内置函数和celery发邮件的方法示例
2019/09/16 Python
Keras预训练的ImageNet模型实现分类操作
2020/07/07 Python
Python 添加文件注释和函数注释操作
2020/08/09 Python
详解BeautifulSoup获取特定标签下内容的方法
2020/12/07 Python
关于Assembly命名空间的三个面试题
2015/07/23 面试题
新闻编辑自荐书范文
2014/02/12 职场文书
函授毕业个人自我评价
2014/02/20 职场文书
销售顾问岗位职责
2014/02/25 职场文书
环境工程专业自荐信
2014/03/03 职场文书
环保建议书100字
2014/05/14 职场文书
学校爱国卫生月活动总结
2014/06/25 职场文书
开学第一周总结
2015/07/16 职场文书
JavaScript实现简单拖拽效果
2021/09/15 Javascript