pyinstaller和wordcloud和jieba的使用案列
一、pyinstaller库
1、简介
pyinstaller库:将脚本程序转变为可执行(.exe)格式的第三方库
注意:需要在.py文件所在目录进行以下命令,图标扩展名是.ico
2、格式:
pyinstaller -F 文件.py
pyinstaller -i 图标名.ico 文件名.py

生成后的.exe文件放在dict文件夹里


二、wordcloud库
1、词云介绍
词云以词语为基本单元,根据其在文本中出现的频率设计不同大小一形成视觉上不同的效果,形成关键词云层或关键词渲染,从而使读者一眼就可以读到文本重点。wordcloud的核心是WordCloud类,所有功能都封装在这个类中,使用时需要先实例化一个WordCloud类的对象,并调用。
2、需要安装的模块
pip install wordcloud
pip install imageio
注意:字体文件需要指定路径,或者和文件放在同一目录
3、wordcloud常用的函数
WordCloud().generate(文本)   将字符串转化成词云
WordCloud().to_file(文件路径) 将词云生成文件
4、案列
点击查看代码
from wordcloud import WordCloud     #使用WordCloud类
import imageio
# from scipy.misc import imread  其中imread模块在scipy中已经被弃用,建议使用imageio
mask = imageio.imread('C:/Users/wordcloud/hzw.png')
#图片转换成数组形式,一般使用png图片,windows中路径要么用/要么要\\因为一条\代表转义字符
with open('C:/Users/wordcloud/hzw.txt','r',encoding='utf-8') as f:
    txt = f.read()
    wordcloud = WordCloud(width=1017,\
        height=1097,\
        max_words=400,\
        max_font_size=80,\
        mask=mask,\
        font_path='msyh.ttc',\
            ).generate(txt)      #字符串转化成词云
    wordcloud.to_file('C:/Users/wordcloud/xhzw.png')  #词云生成文件

效果展示:

在生成词云时,wordcloud默认会以空格或标点为分割符对目标文本进行分词处理,对于中文文本,分词处理需要由用户来完成,可以结合jieba库一起使用,一般步骤是先将文本分词处理,然后以空格拼接,再调用。
用法:
words = jieba.lcut(txt)#进准分词
newtxt = ' '.join(words) #空格拼接
结合jieba库的效果

三、jieba库
1、简介
通过中文词库的方式来识别分词的
-- 利用一个中文词库,确定汉字之间的关联概率
-- 通过计算汉字之间的概率,汉字间概率大的组成词组,形成分词结果
-- 除了分词,用户还可以添加自定义的词组
2、案列
点击查看代码
from posixpath import commonpath
import jieba
with open('C:/Users/hzw.txt','r',encoding='utf-8') as f:
    txt = f.read()
    words = jieba.lcut(txt)
    counts = {}
    bd = [',','。','、',' ']
    for word in words:
        if word in bd:
            continue           #如果文本中有标点符号,就跳过
        elif len(word)==1:     #表示一个字的次遇到就跳过
            continue
        else:
            counts[word]=counts.get(word,0)+1   #将出现过的次记录次数并写进字典
    items = list(counts.items())      #将字典转成列表
    items.sort(key=lambda x:x[1],reverse=True)
    #x可以是任意,[]里面的数表示对第几个元素排序,reverse=True表示升序,默认是降序
    for i in range(3):  #循环三次,只展示排名前三的结果
        word,count=items[i]   #从元组里取值
        print(f'{word:^5}:{count:<5}')    #^居中对齐,保留5个宽度
效果展示

pyinstaller和wordcloud和jieba的使用案列的更多相关文章
- Spring MVC的配置文件(XML)的几个经典案列
		
1.既然是配置文件版的,那配置文件自然是必不可少,且应该会很复杂,那我们就以一个一个的来慢慢分析这些个经典案列吧! 01.实现Controller /* * 控制器 */ public class M ...
 - js闭包的作用域以及闭包案列的介绍:
		
转载▼ 标签: it js闭包的作用域以及闭包案列的介绍: 首先我们根据前面的介绍来分析js闭包有什么作用,他会给我们编程带来什么好处? 闭包是为了更方便我们在处理js函数的时候会遇到以下的几 ...
 - SAMSUNG某型号一千短信成功记录!对比其他软件恢复不成功的案列!
		
Hello! 大家好欢迎再次来到Dr.wonde的博客, 下面谈一下今天的案列,今年11月26号收到了一客户寄来的三星S4手机恢复里面短信, 如下图所示,用其他软件恢复以后,数据为零,没有恢复,,这下 ...
 - php知识案列分享
		
今天再跟大家分享一下,以下案列. 使用array_flip函数生成随机数,可以去掉重复值. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 < ...
 - linux下mysql函数的详细案列
		
MYSQL * STDCALL mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *pas ...
 - axis1,xfire,jUnit 测试案列+开Web Service开发指南+axis1.jar下载 代码
		
axis1,xfire,jUnit 测试案列+Web Service开发指南(中).pdf+axis1.jar下载 代码 项目和资源文档+jar 下载:http://download.csdn. ...
 - 大数据技术之_14_Oozie学习_Oozie 的简介+Oozie 的功能模块介绍+Oozie 的部署+Oozie 的使用案列
		
第1章 Oozie 的简介第2章 Oozie 的功能模块介绍2.1 模块2.2 常用节点第3章 Oozie 的部署3.1 部署 Hadoop(CDH版本的)3.1.1 解压缩 CDH 版本的 hado ...
 - react 的安装和案列Todolist
		
react 的安装和案列Todolist 1.react的安装和环境的配置 首先检查有没有安装node.js和npm node -v npm -v 查看相关版本 2.安装脚手架工具 2.构建:crea ...
 - SpringCloud断路器(Hystrix)和服务降级案列
		
断路器(Hystrix) 为什么需要 Hystrix? 在微服务架构中,我们将业务拆分成一个个的服务,服务与服务之间可以相互调用(RPC).为了保证其高可用,单个服务又必须集群部署.由于网络原因或者自 ...
 
随机推荐
- Nginx:无处不在的Nginx的八个应用场景与配置
			
--- 阅读时间约 15 分钟 --- Nginx概述 众所周知,互联网已经离不开 WEB服务器 ,技术领域中 WEB服务器 不止 Nginx 一个,其他还有很多如 Apache . ...
 - AQS学习(二) AQS互斥模式与ReenterLock可重入锁原理解析
			
1. MyAQS介绍 在这个系列博客中,我们会参考着jdk的AbstractQueuedLongSynchronizer,从零开始自己动手实现一个AQS(MyAQS).通过模仿,自己造轮子来学习 ...
 - SQL Server Management Studio --- SSMS语言更换
			
问题描述 在安装了En版后,想更换为中文版,但换了中文安装源还是英文. 解决方法 运行 SQL Server Management Studio 通过菜单选择你想要使用的语言: 中文版:"工 ...
 - Excel怎么把两个单元格中的文字合并到一个单元格中
			
使用&符号,可以将字符串和单元格中的内容拼接起来
 - Windows安装Docker & Docker-Compose & 配置docker私有仓库
			
一定要给windows先创建软连接,不然系统盘会爆表的: mklink /j .docker D:\Administrator\.docker Win7安装Docker Dockerfile # FR ...
 - HiveServer2的负载均衡高可用与ActicePassive高可用浅析
			
负载均衡的高可用 最近在工作中遇到了hiveserver2需要部署高可用的场景,去网上搜索了解过后,用了绝大多数人推荐的共同方法: Property_name Property_value Descr ...
 - PHP中命名空间是怎样的存在?(三)
			
这是与命名空间有关的最后一篇.最后还是两个比较简单的内容,是关于命名空间和全局相关的一些类.函数.常量的使用对比.当然,最后我们还会总结一下命名空间的名称解析规则做为这三篇系列文章的结束. 全局空间 ...
 - js不记录某个url链接历史访问,返回时不返回该链接
			
(function(){ var fnUrlReplace = function (eleLink) { if (!eleLink) { return; } var href = eleLink.hr ...
 - javascript 责任链模式 Chain of Responsibility
			
* 可拆分的责任链节点 // 可拆分的责任链节点 // Chain.prototype.setNextSuccessor 指定在链条中的下一个节点 // Chain.prototype.passReq ...
 - requests接口自动化-动态关联text/html格式
			
动态关联,前一个接口返回的值为后一个接口请求的参数. # 动态关联 import requests def test_cookies(): # 以百度为例 r_baidu=requests.get(' ...