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实现从百度API获取天气的方法
Mar 11 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
Jul 24 Python
Python numpy实现数组合并实例(vstack,hstack)
Jan 09 Python
python 实现将字典dict、列表list中的中文正常显示方法
Jul 06 Python
在python中按照特定顺序访问字典的方法详解
Dec 14 Python
Python从单元素字典中获取key和value的实例
Dec 31 Python
Python Web框架之Django框架cookie和session用法分析
Aug 16 Python
PyTorch 对应点相乘、矩阵相乘实例
Dec 27 Python
Python实现括号匹配方法详解
Feb 10 Python
Python如何实现爬取B站视频
May 20 Python
Python判断字符串是否为合法标示符操作
Sep 03 Python
Pycharm的Available Packages为空的解决方法
Sep 18 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中创建和调用webservice接口示例
2014/07/25 PHP
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
2014/11/04 PHP
javascript 简单高效判断数据类型 系列函数 By shawl.qiu
2007/03/06 Javascript
jQuery验证Checkbox是否选中的代码 推荐
2011/09/04 Javascript
js和jquery使按钮失效为不可用状态的方法
2014/01/26 Javascript
jQuery中unbind()方法用法实例
2015/01/19 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
2015/03/12 Javascript
js实现精美的图片跟随鼠标效果实例
2015/05/16 Javascript
javascript函数式编程程序员的工具集
2015/10/11 Javascript
layer实现弹窗提交信息
2016/12/12 Javascript
jQuery用noConflict代替$的实现方法
2017/04/12 jQuery
Vue下的国际化处理方法
2017/12/18 Javascript
利用js将ajax获取到的后台数据动态加载至网页中的方法
2018/08/08 Javascript
ndm:NPM的桌面GUI应用程序
2018/10/15 Javascript
微信小程序实现通讯录列表展开收起
2020/11/18 Javascript
详解React路由传参方法汇总记录
2020/11/29 Javascript
Python编程修改MP3文件名称的方法
2017/04/19 Python
python音频处理用到的操作的示例代码
2017/10/27 Python
pytorch 加载(.pth)格式的模型实例
2019/08/20 Python
Python如何使用函数做字典的值
2019/11/30 Python
纯CSS3实现的井字棋游戏
2020/11/25 HTML / CSS
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
大专生自我鉴定范文
2013/10/01 职场文书
网络编辑岗位职责范本
2014/02/10 职场文书
历史专业学生的自我评价
2014/02/28 职场文书
如何写好建议书
2014/03/13 职场文书
竞争上岗实施方案
2014/03/21 职场文书
师恩难忘教学反思
2014/04/27 职场文书
活动总结格式
2014/08/30 职场文书
银行领导班子四风对照检查材料
2014/09/27 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书
地球一小时活动总结
2015/02/27 职场文书
idea编译器vue缩进报错问题场景分析
2021/07/04 Vue.js
Android存储中最基本的文件存储方式
2022/04/30 Java/Android
vue使用element-ui按需引入
2022/05/20 Vue.js
Java实现字符串转为驼峰格式的方法详解
2022/07/07 Java/Android