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实现多行注释的另类方法
Aug 22 Python
Python下的twisted框架入门指引
Apr 15 Python
使用Python的Flask框架来搭建第一个Web应用程序
Jun 04 Python
Python与R语言的简要对比
Nov 14 Python
使用apidoc管理RESTful风格Flask项目接口文档方法
Feb 07 Python
python定时任务 sched模块用法实例
Nov 04 Python
python 爬虫 实现增量去重和定时爬取实例
Feb 28 Python
Python装饰器结合递归原理解析
Jul 02 Python
Windows 平台做 Python 开发的最佳组合(推荐)
Jul 27 Python
python使用matplotlib绘制折线图的示例代码
Sep 22 Python
Pycharm安装python库的方法
Nov 24 Python
基于Python实现流星雨效果的绘制
Mar 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
制作美丽的拉花
2021/03/03 冲泡冲煮
php学习之变量的使用
2011/05/29 PHP
最新用php获取谷歌PR值算法,附上php查询PR值代码示例
2011/12/25 PHP
document对象execCommand的command参数介绍
2006/08/01 Javascript
javascript判断单选框或复选框是否选中方法集锦
2007/04/04 Javascript
Javascript 类、命名空间、代码组织代码
2011/07/31 Javascript
计算新浪Weibo消息长度(还可以输入119字)
2013/07/02 Javascript
根据选择不同的下拉值出现相对应的文本输入框
2013/08/01 Javascript
node.js中的fs.fsync方法使用说明
2014/12/15 Javascript
jquery通过load获取文件的内容并跳到锚点的方法
2015/01/29 Javascript
javascript实现数独解法
2015/03/14 Javascript
jQuery实现文本展开收缩特效
2015/06/03 Javascript
JavaScript清空数组元素的两种方法简单比较
2015/07/10 Javascript
window.location.hash知识汇总
2015/11/09 Javascript
jQuery简单实现提交数据出现loading进度条的方法
2016/03/29 Javascript
Bootstrap Table从服务器加载数据进行显示的实现方法
2016/09/29 Javascript
JavaScript基于自定义函数判断变量类型的实现方法
2016/11/23 Javascript
微信小程序  checkbox组件详解及简单实例
2017/01/10 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
2019/09/20 Javascript
javascript实现fetch请求返回的统一拦截
2019/12/22 Javascript
[46:16]2018DOTA2亚洲邀请赛3月30日 小组赛B组 iG VS VP
2018/03/31 DOTA
[02:36]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma 选手采访
2021/03/11 DOTA
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
使用Python3中的gettext模块翻译Python源码以支持多语言
2015/03/31 Python
python3抓取中文网页的方法
2015/07/28 Python
Python中MySQL数据迁移到MongoDB脚本的方法
2016/04/28 Python
Python基于列表list实现的CRUD操作功能示例
2018/01/05 Python
在pandas中遍历DataFrame行的实现方法
2019/10/23 Python
Django 设置多环境配置文件载入问题
2020/02/25 Python
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
软件测试面试题
2015/10/21 面试题
销售会议开幕词
2015/01/28 职场文书
电影焦裕禄观后感
2015/06/09 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
JavaScript中的LHS和RHS分析详情
2022/04/06 Javascript
德生TECSUN S-2000使用手册文字版
2022/05/10 无线电