学习精华——成长篇(三)

本文详细介绍了Python中常用的一些第三方库,包括爬虫库request和scrapy,数据分析库numpy和scipy,文本处理库如pdfminer和openpyxl,数据可视化库matplotlib和tvtk,用户图形界面库pyqt5,机器学习库scikit-learn和TensorFlow,以及其他如PIL、sympy和jieba等库。同时,文章还提到了如何安装和导出为.exe文件的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,第三方库简要介绍

1、爬虫库

典型有两个request库和scrapy库
request库
是最简单易用的HTTP库,常见且常见的
scrapy库
快速的高层次的web获取框架,本身包含了成熟的网络爬虫系统应具有的功能

2、数据分析库

numpy库

处理类型相同的多维数组,存储和处理大型矩阵,另外,机器学习算法中大部分都是调用numpy库来完成基础数值计算的。
numpy比Python列表更具优势,其中一个优势便是速度
numpy的另一个强大功能是具有可以表示向量和矩阵的多维数组数据结构。numpy对矩阵运算进行了优化,使我们能够高效地执行线性代数运算,使其非常适合解决机器学习问题。
numpy具有的另一个强大优势是具有大量优化的内置数学函数。这些函数使你能够非常快速地进行各种复杂的数学计算,并且用到很少代码(无需使用复杂的循环),使程序更容易读懂和理解。
注意,numpy中元素必须是同一类型

import numpy as np 
array_one = np.ones([4, 4], dtype=np.int)#矩阵大小,元素类型
print(array_one)
>>>
[[1 1 1 1]
 [1 1 1 1]
 [1 1 1 1]
 [1 1 1 1]]
import numpy as np
array_eye = np.eye(5)#创建单位矩阵
print(array_eye)
>>>
[[1. 0. 0. 0. 0.]
 [0. 1. 0. 0. 0.]
 [0. 0. 1. 0. 0.]
 [0. 0. 0. 1. 0.]
 [0. 0. 0. 0. 1.]]

scipy库

scipy是一个用于数学、科学、工程领域的常用软件包,可以处理插值、积分、优化、图像处理、常微分方程数值解的求解、信号处理等问题。它用于有效计算numpy矩阵,使numpy和scipy协同工作,高效解决问题。
曲线拟合

import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

from numpy import polyfit, poly1d

x = np.linspace(-5, 5, 100)
y = 4 * x + 1.5
noise_y = y + np.random.randn(y.shape[-1]) * 2.5

coeff = polyfit(x, noise_y, 1)

p = plt.plot(x, noise_y, 'rx')
p = plt.plot(x, coeff[0] * x + coeff[1], 'k-')
p = plt.plot(x, y, 'b--')

plt.show()

结果如图:
在这里插入图片描述

3、文本处理库

pdfminer库

从PDF中提取信息

openpyxl库

处理Excel文档

python-docx库

处理word文档

beautifulsoup4库

解析HTML和XML

4、数据可视化库

matplotlib库

用于二维图表表示

import matplotlib.pyplot as plt

plt.plot([4,7,1,9,4])
    #绘图接收一个list,如果只有一个list默认其为Y轴,X轴数据为其索引值,从0开始
plt.ylabel("grade")
plt.axis([-2,8,0,12])
    #axis函数接收一个list,设定横纵坐标尺度,list各个参数分别代表[X初始刻度,X终止刻度,Y起始刻度,Y终止刻度]
plt.show()

在这里插入图片描述

tvtk库

三维可视化工具

mayavi库

更方便的三维可视化工具

5、用户图形界面库

pyqt5库

最成熟的图形界面库
pyqt5应用使用的所有图标都是从easyicon网站下载的,easyicon的官方网址是:http://www.easyicon.net/

6、机器学习库

scikit-learn库

简单易用,接口抽象得非常好,而且文档支持实在感人。本文中,我们可以封装其中的很多机器学习算法,然后进行一次性测试,从而便于分析取优。
数据挖掘和数据分析工具,主要功能有分类,回归,聚类,降维,预处理

TensorFlow库

Google发布的,支持AlphaGo系统,主要应用于语音识别,图像识别

theano库

执行深度学习中大规模网络算法
theano 在深度学习框架中是祖师级的存在。它的开发始于 2007,它也被大量地运用于教育行业和自我学习提升(例如:加拿大蒙特利尔大学的深度学习课程)。

7、其他有意思的库

PIL库

图像处理库
PIL库主要用途

图像存储

PIL适合图像归档和图像批量处理,你可以使用它建立缩略图,转换格式,打印图片等。
现在的版本可以识别和读取大量的图片格式,写入常用的转换和表示格式。

图像显示

支持多个其他工具包的展示,提供了show()方法,可以保存图像到磁盘并调用外显示。它将图像保存到磁盘,并调用外部显示工具。

图像处理(重点)

包含了基本的图像处理功能,包括点操作,使用内置卷积内核过滤,色彩空间转换。
支持更改图像大小、旋转、任意仿射变换。

sympy库

支出高精度计算,解方程,微积分,几何,统计
sympy是一个数学符号库,包括了积分,微分方程等各种数学运算方法,为python提供了强大的数学运算支持。对于图像来说,虽然都是做离散的计算,操作最多的还是numpy里的数组,但实际上,这个库包含了积分微分,三角等最基本的数学运算,可以说是工科最基本的,用起来媲美matlab。

weRoBot库

微信公众号开发框架
这个库封装了微信公众号的很多接口。通过这个库你可以很容易的给订阅你公众号的粉丝发送消息、推送图文、跟粉丝互动。

MyQR库

产生二维码
不仅可以生成各种花色的二维码,还可以生成动态二维码。
MyQR是一个能够生成自定义二维码的第三方库,可以根据需要生成普通二维码、带图片的艺术二维码,也可以生成动态二维码

jieba库

将一句话或一段文字,自动切断,生成一个列表,切断规则按照语法或常用语。
还可以存入自己的常用语,作为一个词语,不让他自动切分。

import jieba
print(jieba.lcut('三维激光扫描主要有:激光器,测角,扫描等组成'))
jieba.add_word('三维激光')
print(jieba.lcut('三维激光扫描主要有:激光器,测角,扫描等组成'))
#输出得到
['三维', '激光', '扫描', '主要', '有', ':', '激光器', ',', '测角', ',', '扫描', '等', '组成']

['三维激光', '扫描', '主要', '有', ':', '激光器', ',', '测角', ',', '扫描', '等', '组成']

Word cloud库

词云库,更适合英文的以空格和标点隔开

最常用的库——sys库

常看python解释器信息,以及传递信息给python解释器
sys.argv说明
从程序外部获取参数的桥梁,返回一个列表。
其中包含脚本路径,以及传递给脚本的命令参数
特点是,无需用户给参数,由系统给参数。也就是说,有电脑别的程序给参数。

sys.exit()
程序正常退出
sys.exit(1)
参数非零,程序异常退出

二,第三方库安装使用

一般使用pycharm里面的自带的安装方法
File–>setting–>project–>"+"–>搜索需要的库
注意下载网址,添加下载网址时,点击“+”后,左下角有“manage repository”,输入第三方库网址,常用的网址有:https://pypi.tuna.tsinghua.edu.cn/simple/

在命令提示符中,输入“pip list”查看电脑安装了几个第三方库

导出.exe文件

在pycharm的底部找到“Terminal”窗口,打开输入:
pyinstaller 项目名.py
点回车,在C:\Users\用户名\PycharmProjects\untitled,中得到两个文件夹,dist和build,.exe文件在dist中,点击执行。

在在pycharm的底部找到“Terminal”窗口,打开输入:
pyinstaller -F 项目名.py -i 789.ico
得到两个文件夹,dist和build,在dist中只有.exe文件,且图表是自己设定的789.ico,且当做图表的只能是.ico文件

转换图片为.ico文件的网站是:
http://www.bitbug.net/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值