一、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的使用案列的更多相关文章

  1. Spring MVC的配置文件(XML)的几个经典案列

    1.既然是配置文件版的,那配置文件自然是必不可少,且应该会很复杂,那我们就以一个一个的来慢慢分析这些个经典案列吧! 01.实现Controller /* * 控制器 */ public class M ...

  2. js闭包的作用域以及闭包案列的介绍:

    转载▼ 标签: it   js闭包的作用域以及闭包案列的介绍:   首先我们根据前面的介绍来分析js闭包有什么作用,他会给我们编程带来什么好处? 闭包是为了更方便我们在处理js函数的时候会遇到以下的几 ...

  3. SAMSUNG某型号一千短信成功记录!对比其他软件恢复不成功的案列!

    Hello! 大家好欢迎再次来到Dr.wonde的博客, 下面谈一下今天的案列,今年11月26号收到了一客户寄来的三星S4手机恢复里面短信, 如下图所示,用其他软件恢复以后,数据为零,没有恢复,,这下 ...

  4. php知识案列分享

    今天再跟大家分享一下,以下案列. 使用array_flip函数生成随机数,可以去掉重复值. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 < ...

  5. linux下mysql函数的详细案列

    MYSQL * STDCALL mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *pas ...

  6. axis1,xfire,jUnit 测试案列+开Web Service开发指南+axis1.jar下载 代码

    axis1,xfire,jUnit 测试案列+Web Service开发指南(中).pdf+axis1.jar下载    代码 项目和资源文档+jar 下载:http://download.csdn. ...

  7. 大数据技术之_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 ...

  8. react 的安装和案列Todolist

    react 的安装和案列Todolist 1.react的安装和环境的配置 首先检查有没有安装node.js和npm node -v npm -v 查看相关版本 2.安装脚手架工具 2.构建:crea ...

  9. SpringCloud断路器(Hystrix)和服务降级案列

    断路器(Hystrix) 为什么需要 Hystrix? 在微服务架构中,我们将业务拆分成一个个的服务,服务与服务之间可以相互调用(RPC).为了保证其高可用,单个服务又必须集群部署.由于网络原因或者自 ...

随机推荐

  1. JS003. 事件监听和监听滚动条的三种参数( addEventListener( ) )

    全局 1 window.addEventListener('scroll', () => { 2 console.log('------') 3 console.log(document.doc ...

  2. mysql忘记root密码连接本地库

    http://www.cnblogs.com/zf2011/archive/2012/03/13/2393387.html 今天想做个小项目,决定用mysql数据库,但是好久没用mysql了,也忘掉了 ...

  3. xshell与小键盘问题

    有些程序员的键盘是带有小数字键的,在使用xshell中文版时就可能出现一些小状况,本集就同大家分析一下使用数字键盘出现乱码的情况怎么办. 图1:使用数字小键盘出现乱码 问题描述: 在xshell上用v ...

  4. CodeForce-803C Maximal GCD(贪心数学)

    Maximal GCD CodeForces - 803C 现在给定一个正整数 n.你需要找到 k 个严格递增的正整数 a1, a2, ..., ak,满足他们的和等于 n 并且他们的最大公因数尽量大 ...

  5. 解决使用tomcat服务器发布web项目时出现URL中文乱码的问题

    打开Tomcat的安装路径 打开server.xml文件 在修改端口号的一行既是下图中位置添加 URIEncoding="UTF-8" 就能替换在用eclipse或者myeclip ...

  6. DEDE整合套件实现本地多个网站随意切换的开发环境

    一.修改WEB全局配置: 在Listen 80 后面添加自己的端口号. 例如,2020是我的端口 Listen 2020 二.修改WEB站点配置: a---在NameVirtualHost *:80后 ...

  7. Sentry 监控 - Security Policy 安全策略报告

    系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...

  8. 解决navicat 导出excel数字为科学计数法问题

    1.原因分析      用程序导出的csv文件,当字段中有比较长的数字字段存在时,在用excel软件查看csv文件时就会变成科学技术法的表现形式.     其实这个问题跟用什么语言导出csv文件没有关 ...

  9. tornado中通用模版

    第一: 1.Pycharm新建python项目(不是django项目),在项目下面直接新建server.py,内容如下: 2.安装tornado, pip install tornado import ...

  10. AT2567-[ARC074C]RGB Sequence【dp】

    正题 题目链接:https://www.luogu.com.cn/problem/AT2567 题目大意 长度为\(n\)的包含三种颜色\(RGB\)的序列,\(m\)个限制\([l,r,k]\)表示 ...