计算机⼆级python 知识点篇(第三⽅库)
计算机⼆级python 知识点篇(第三⽅库)考点考纲
脚 本 程 序 转 变 为 可 执 ⾏ 程 序 的 第 三 ⽅ 库 :PyInstaller 库(必选)
第三⽅库: jieba 库(必选)、 wordcloud 库(可选)
PyInstaller 库与程序打包
PyInstaller 是⼀个⼗分有⽤的Python 第三⽅库, 它能够在Windows 、 Linux 、 Mac OS X 等操作系统下将Python 源⽂件打包, 变成直接可运⾏的可执⾏⽂件。
通过对源⽂件打包, Python 程序可以在没有安装Python 的环境中运⾏, 也可以作为⼀个独⽴⽂件⽅便传递和管理使⽤PyInstaller 库对Python 源⽂件打包⼗分简单,使⽤⽅法如下:
:\\>PyInstaller <Python 源程序⽂件名>
执⾏完毕后, 源⽂件所在⽬录将⽣成dist 和build 两个⽂件夹。 最终的打包程序在dist 内部与源⽂件同名的⽬录中。通过-F 参数对Python 源⽂件⽣成⼀个独⽴的可执⾏⽂件, 如下:
:
\>PyInstaller -F <Python 源程序⽂件名>
执⾏后在dist ⽬录中出现了*.exe ⽂件,没有任何依赖库,可直接运⾏
PyInstaller 有⼀些常⽤参数
参数
功能-h, --help
查看帮助--clean
清理打包过程中的临时⽂件-D, --onedir
默认值, ⽣成dist ⽬录-F, --onefile
在dist ⽂件夹中只⽣成独⽴的打包⽂件-i <;图标⽂件名.ico >指定打包程序使⽤的图标(icon ) ⽂件
jieba 库
jieba (“结巴” ) 是Python 中⼀个重要的第三⽅中⽂分词函数库大学python知识点汇总
jieba 库的分词原理是利⽤⼀个中⽂词库, 将待分词的内容与分词词库进⾏⽐对, 通过图结构和动态规划⽅法到最⼤概率的词组。除了分词,jieba 还提供增加⾃定义中⽂单词的功能
jieba 库⽀持三种分词模式:
精确模式, 将句⼦最精确地切开, 适合⽂本分析;
全模式, 把句⼦中所有可以成词的词语都扫描出来, 速度⾮常快,但是不能解决歧义;
搜索引擎模式, 在精确模式基础上, 对长词再次切分, 提⾼召回率, 适合⽤于搜索引擎分词
jieba 库常⽤的分词函数
函数
描述jieba.cut(s)精确模式,返回⼀个可迭代的数据类型jieba.cut(s,cut_all=True)全模式,输出⽂本s 中所有可能的单词
jieba.cut_for_search(s)搜索引擎模式,适合搜索引擎建⽴索引的分词结构>
jieba.cut(s)精确模式,返回⼀个列表类型,推荐使⽤
函数描述
jieba.cut(s,cut_all=True)全模式,返回⼀个列表类型,推荐使⽤
jieba.cut_for_search(s)搜索引擎模式。返回⼀个列表类型,推荐使⽤
jieba.add_word(w)想分词词典中增加新词 w
搜索引擎模式更倾向于寻短词语,这种⽅式具有⼀定冗余度,但冗余度相⽐全模式较少。如果希望对⽂本准确分词,不产⽣冗余,只能选择jieba.lcut(s)函数,即精确模式。如果希望对⽂本分词更准确,不漏掉任何可能的分词结果,请选⽤全模式。如果没想好怎么⽤,可以使⽤搜索引擎模式。
>>>import jieba
>>>ls = jieba.lcut("全国计算机等级考试Python科⽬")
>>>print(ls)
['全国', '计算机', '等级', '考试', 'Python', '科⽬']
>>>import jieba
>>>ls = jieba.lcut("全国计算机等级考试Python科⽬", cut_all=True)
>>>print(ls)
['全国', '国计', '计算', '计算机', '算机', '等级', '考试','Python', '科⽬']
>>>import jieba
>>>ls = jieba.lcut_for_search("全国计算机等级考试Python科⽬")
>>>print(ls)
['全国', '计算', '算机', '计算机', '等级', '考试', 'Python', '科⽬']
>>>import jieba
>>>jieba.add_word("Python科⽬")
>>>ls = jieba.lcut("全国计算机等级考试Python科⽬")
>>>print(ls)
['全国', '计算机', '等级', '考试', 'Python科⽬']
wordcloud 库
##
ordcloud库是专门⽤于根据⽂本⽣成词云的Python第三⽅库,⼗分常⽤且有趣
在⽣成词云时, wordcloud默认会以空格或标点为分隔符对⽬标⽂本进⾏分词处理。对于中⽂⽂本,分词处理需要由⽤户来完成。⼀般步骤是先将⽂本分词处理,然后以空格拼接,再调⽤wordcloud库函数。
import jieba
from wordcloud import WordCloud
txt = '程序设计语⾔是计算机能够理解和识别⽤户操作意图的⼀种交互体系,它按
照特定规则组织计算机指令,使计算机能够⾃动进⾏各种运算处理。 '
words = jieba.lcut(txt) # 精确分词
newtxt = ' '.join(words) # 空格拼接
wordcloud = WordCloud(font_path="").generate(newtxt)
<_file('词云中⽂例⼦图.png') # 保存图⽚
wordcloud库的核⼼是WordColoud类,所有的功能都封装在WordCloud类中。使⽤时需要实例化⼀个WordColoud类的对象,并调⽤其generate(text)⽅法将text⽂本转化为词云。
WordCloud对象创建的常⽤参数
参数功能
font_path指定字体⽂件的完整路径,默认None
width⽣成图⽚宽度,默认400像素
height⽣成图⽚⾼度,默认200像素
mask词云形状,默认None,即,⽅形图
min_font_size词云中最⼩的字体字号,默认4号
font_step字号步进间隔,默认1
min_font_size词云中最⼤的字体字号,默认None,根据⾼度⾃动调节
max_words词云图中最⼤词数,默认200
stopwords被排除词列表,排除词不在词云中显⽰
background_color图⽚背景颜⾊,默认⿊⾊
generate(text)由text⽂本⽣成词云
to_file(filename)将词云图保存为名为filename的⽂件
from wordcloud import WordCloud
from scipy.misc import imread
mask = imread('AliceMask.png')
with open('', 'r', encoding='utf-8') as file:
text = ad()
wordcloud = WordCloud(background_color="white", \
width=800, \
height=600, \
max_words=200, \
max_font_size=80, \
mask = mask, \
).generate(text)
# 保存图⽚
<_file('AliceInWonderland.png')
其中, from scipy.misc import imread⼀⾏⽤于将AliceMask.png读取为nd-array类型,⽤于后⾯传递给mask参数使⽤。(这个库函数⾪属于scipy库, pip在安装wordcloud库时会⾃动安装依赖库。)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。

发表评论