第十一章 python第三方库

第一节 第三方库的获取和安装

Python第三方库依照安装方式灵活性和难易程度有三个方法:pip工具安装(主要方法)、自定义安装和文件安装
python全球社区:https://pypi.org/

pip工具安装

  • 最常用且最高效的Python第三方库安装方式是采用pip工具安装
  • pip是Python官方提供并维护的在线第三方库安装工具。
    pip工具安装步骤:
  1. 打开cmd命令行(快捷键:Win+r)
  2. 在命令行下执行命令
    • Windows系统:pip install <拟安装库名>
    • Mac系统:pip3 install <拟安装库名>
  3. 检验安装是否成功(任意一种都可):
    1. 安装后提示Successfully installed(表示安装成功)
    2. 通过命令pip list,查询已安装的库,找到安装的库


pip指令在安装第三方库的时候,会连接互联网,从互联网上自动下载安装包。

pip安装第三库的常用方法

直接用pip方法安装第三方库很慢,因为我们需要在国外的网站上下载第三方库,然后再安装,如何解决呢?这就需要我们的豆瓣,因为豆瓣把所有库都做了镜像,下载速度会比较快

pip命令pip3 install -i https://pypi.douban.com/simple/ <库名>
注:一般我们都会使用这个命令安装,而不使用上面的pip命令安装
下面是一些常见的pip命令

pip命令 作用
pip install <第三方库名> 安装指定的第三方库
pip install -U <第三方库名> 使用-U标签更新已安装的指定第三方库(更新到最新版本)
pip uninstall <第三方库名> 卸载指定的第三方库
pip download <第三方库名> 下载但不安装指定的第三库
pip show <第三方库名> 列出某个指定的第三方库的详细信息(介绍,使用方法)
pip search <关键字> 根据关键词在名称和介绍中搜素第三方库
pip list 列出当前系统已经安装的第三方库

第二节 pyinstaller库

1.pyinstaller库概述

  • PyInstaller是一个十分有用的Python第三方库,
  • 它能够在Windows、Linux、Mac OS X等操作系统下将Python源文件打包,将.py源代码转换成可执行文件(即.exe文件:无需安装python就能执行python源代码的文件)

2.pyinstaller库使用说明

python程序打包过程

  1. 进入终端(cmd命令窗口):win+r快捷键
  2. 在终端中进入要打包文件的路径:在终端中输入命令:cd <要打包的.py文件的路径>

在终端中进入要打包文件的路径后可以通过命令:dir 来查看当前文件中存在几个文件

  1. 对.py程序进行打包:在终端中输入命令:pyinstaller

对.py程序进行打包完成后,python源代码所在文件夹会新出现:build文件夹,dist文件夹,_pycache_文件夹,其中可执行文件在build文件夹中

  1. 对.py程序进行打包(纯净版)由于build文件夹中文件太多,不容易找到可执行文件,所以我们利用参数进行设置,让build文件只生成可执行文件,即在终端中输入命令:pyinstaller -F

pyinstaller库的常用参数

参数 描述
-h 查看帮助
–clean 清理打包过程中的临时文件
-D/–onedir 默认值,生成dist文件夹
-F/–onefile 在dist文件夹中只生成独立的打包文件
-i <图标文件名.ico> 指定可执行文件使用的图标(icon)文件

改变可执行文件的图标注意事项

  1. 图标文件必须是.ico文件,可以通过迅捷icon在线转换这个网站将.png等正常图片格式转换成.ico格式。
  2. 图标文件要与打包的.py文件在同一文件夹下
  3. 输入命令:pystaller -i <图标文件名>.ico -F

第三节 jieba库

1.jieba库基本介绍

jieba库是优秀的中文分词第三方库

  • 中文文本需要通过分词获得单个的词语

jieba库原理

  • jieba库分词依靠中文词库将待分词的内容与分词词库进行比对,通过图结构和动态规划方法找到最大概率的词组
  • 汉字间概率大的组成词组,形成分词结果
  • 处理分词时,用户还可以添加自定义的词组,从而使分词更适应某些具体领域的作用
    jieba库支持三种分词模式
分词模式 定义
精确模式(最常用) 把文本精确的切分开,不存在冗余(重复)汉字,适合文本分析
全模式 把文本中所有可以成词的词语都扫描出来,有冗余
搜素引擎模式 精确模式的结果上,对其中的长词进一步切分。适合用于搜索引擎分词

2.jieba库常用函数

jieba库的分词函数都是将一个字符串分词成一个列表,列表中元素为分词结果,只是模式不同

函数 作用
jieba.lcut(s) 精确模式,将字符串s返回一个列表类型的分词结果
jieba.lcut(s,cut_all=True) 全模式,返回一个列表类型的分词结果,存在冗余
jieba.lcut_for_search(s) 搜索引擎模式,返回一个列表类型的分词结果,存在冗余
jieba.add_word(w) 向分词字典中增加新词,即字符串w

示例如下:

from jieba import *
ls=lcut("全国计算机等级考试python科目")
print(ls)
ls=lcut("全国计算机等级考试python科目",cut_all=True)
print(ls)
ls=lcut_for_search("全国计算机等级考试python科目")
print(ls)
ls=lcut("作为一个年轻人,我们要努力,加油,奥利给")
print(ls)
add_word("奥利给")
ls=lcut("作为一个年轻人,我们要努力,加油,奥利给")
print(ls)
# 输出结果:
#精确模式,无冗余
['全国', '计算机', '等级', '考试', 'python', '科目']
#全模式,分词得到的结果最多,存在冗余
['全国', '国计', '计算', '计算机', '算机', '等级', '考试', 'python', '科目']
#搜索引擎模式,在精确模式分词结果的基础上,将长词计算机进一步切分为了计算和算计,存在冗余
['全国', '计算', '算机', '计算机', '等级', '考试', 'python', '科目']
#验证add_word(w)函数的作用,验证奥利给是否加入中文词库
['作为', '一个', '年轻人', ',', '我们', '要', '努力', ',', '加油', ',', '奥利', '给']
['作为', '一个', '年轻人', ',', '我们', '要', '努力', ',', '加油', ',', '奥利给']

第四节 wordcloud库

wordcloud库是优秀的词云展示第三方库

  • wordcloud库把词云当做一个WordCloud对象
  • wordcloud.WordCloud()代表一个文本对应的词云
  • 在生成词云时,wordcloud库默认会以空格或标点为分隔符对目标文本进行分词处理。
  • 对于英文文本,无需用户进行分词处理,wordcloud库会自动处理(因为英文单词分隔用的就是空格)
  • 对于中文文本,分词处理需要由用户来完成。一般步骤是先将文本分词处理,然后以空格拼接,再调用wordcloud库函数
  • 绘制的词云的形状,尺寸和颜色包括字体都可以设定
  • 生成的词云可以保存到本地
    w=wordcloud.WordCloud()
  • w是一个词云对象,其中第一个wordcloud是库名,通过库引用格式有时可以省略。
  • 可以向词云对象w中配置参数(自身就可修改),加载文本(generate()方法),输出文件(to_file()方法)

wordcloud库常规方法(w=wordcloud.WordCloud())

方法 描述
wd=w.generate(txt) 向wordcloud对象w中加载**文本txt(该变量可看成是一个字符串)**形成词云,然后赋值给变量wd
wd.to_file(<“路径+输出的图像文件名.png/ipg”>) 将词云wd输出为图像文件(.png/jpg格式)

:.to_file()方法中路径与open()函数中的路径相同,分为绝对路径和相对路径
对于中英文文本绘制词云的示例如下:

# 英文文本形成词云
import wordcloud
txt='i like python i an learning python'
wd=wordcloud.WordCloud().generate(txt)
wd.to_file('test.png')

# 中文文本形成词云(需要用到jieba库)
import jieba  
#也可以不用jieba库,利用replace()方法将所有标点符号替换成空格,但是太麻烦了
import wordcloud
txt='''程序设计语言是用于书写计算机程序的语言。语言的基础是一组记号和一组
规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这
些记号串就是程序。程序设计语言有3个方面的因素,即语法、语义和语用。语
法表示程序的结构或形式,亦即表示构成语言的各个记号之间的组合规律,但
不涉及这些记号的特定含义,也不涉及使用者。语义表示程序
的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但不涉及使用者'''
ls=jieba.lcut(txt)
s=' '.join(ls)
# 因为词云默认生成的字体是英文,要想显示中文的话,我们还要设置文件字体的路径
w=wordcloud.WordCloud(font_path='C:/Windows/Fonts/simkai.ttf',width=800,height=600)
wd=w.generate(s)
wd.to_file('程序设计语言词云.png')

词云绘制的步骤

  1. 配置词云参数:w=wordcloud.WordCloud()
  2. 加载词云文本:w.generate(txt)
  3. 输出词云文件(图片):w.to_file()

词云对象常用的参数:

参数 描述
width 指定生成的图片宽度,默认400像素
heigh 指定生成的图片高度,默认200像素
min_font_size 指定词云中字体的最小字号,默认为4号
max_font_size 指定词云中字体的最大字号,默认None,根据高度自动调节
font_step 指定词云中字体字号的步进间隔,默认为1
font_path 指定字体文件的完整路径,默认None
max_words 指定词云中显示的最大单词数量,默认20
stop_words 指定词云的排除词列表,即不显示的单词列表
mask 指定词云形状,默认为长方形,需要引用imread()函数
background_color 指定词云图片的背景颜色,默认为黑色

:

  1. 文件字体的完整路径为:'C:/Windows/Fonts/<字体名称.后缀名>
  2. 前面的路径都是一样的,每台电脑上都能找到,具体的字体文件要看电脑上有没有下载,一般常用的字体都是已经下载好了的。
  3. 字体名称:在上述路径中找到你想要在词云中使用的字体文件,右键属性,找到.ttc那一行,就是字体名称

第五节 第三方库纵览

第十一章 python第三方库_第1张图片

你可能感兴趣的:(python计算机二级,python,windows,pycharm)