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 中urls.py:URL dispatcher(路由配置文件)详解
Mar 24 Python
Python进阶_关于命名空间与作用域(详解)
May 29 Python
Python实现的计算马氏距离算法示例
Apr 03 Python
利用Python写一个爬妹子的爬虫
Jun 08 Python
python如何解析配置文件并应用到项目中
Jun 27 Python
python命令行工具Click快速掌握
Jul 04 Python
pycharm设置鼠标悬停查看方法设置
Jul 29 Python
Django Form and ModelForm的区别与使用
Dec 06 Python
tensorflow2.0与tensorflow1.0的性能区别介绍
Feb 07 Python
在python里创建一个任务(Task)实例
Apr 25 Python
Python基于QQ邮箱实现SSL发送
Apr 26 Python
图解Python中深浅copy(通俗易懂)
Sep 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的SQL注入过程分析
2012/01/06 PHP
让ThinkPHP的模板引擎达到最佳效率的方法详解
2017/03/14 PHP
php获得刚插入数据的id 的几种方法总结
2018/05/31 PHP
wordpress之js库集合研究介绍
2007/08/17 Javascript
使用javascipt---实现二分查找法
2013/04/10 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
JavaScript中的函数声明和函数表达式区别浅析
2015/03/27 Javascript
js全选按钮的实现方法
2015/11/17 Javascript
Jquery左右滑动插件之实现超级炫酷动画效果附源码下载
2015/12/02 Javascript
JS函数定义方式的区别介绍
2016/03/22 Javascript
es6的数字处理的方法(5个)
2017/03/16 Javascript
vue-router实现webApp切换页面动画效果代码
2017/05/25 Javascript
JS设计模式之状态模式概念与用法分析
2018/02/05 Javascript
微信小程序多音频播放进度条问题
2018/08/28 Javascript
React 源码中的依赖注入方法
2018/11/07 Javascript
jQuery实现数字华容道小游戏(实例代码)
2020/01/16 jQuery
vue + node如何通过一个Txt文件批量生成MP3并压缩成Zip
2020/06/02 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
2020/11/05 Javascript
Vue 防止短时间内连续点击后多次触发请求的操作
2020/11/11 Javascript
pyramid配置session的方法教程
2013/11/27 Python
Python中为什么要用self探讨
2015/04/14 Python
Linux下python3.7.0安装教程
2018/07/30 Python
Python实现的读取/更改/写入xml文件操作示例
2018/08/30 Python
Django ORM 查询管理器源码解析
2019/08/05 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
TensorFLow 不同大小图片的TFrecords存取实例
2020/01/20 Python
在Tensorflow中实现梯度下降法更新参数值
2020/01/23 Python
Python PyQt5模块实现窗口GUI界面代码实例
2020/05/12 Python
手对手的教你用canvas画一个简单的海报的方法示例
2018/12/10 HTML / CSS
美国男女折扣服饰百货连锁店:Stein Mart
2017/05/02 全球购物
经典优秀个人求职信分享
2013/12/12 职场文书
高一自我鉴定
2013/12/17 职场文书
《美丽的彩虹》教学反思
2014/02/25 职场文书
见习报告的格式
2014/11/04 职场文书
2014年党风建设工作总结
2014/11/19 职场文书
刑事上诉状范文
2015/05/22 职场文书