目录
一、Python与Pip的关系
1.1 Python与Pip的关系
Python的特点之一是具有强大的标准库和第三方库。
- 标准库:Python的标准库,是Python安装时自带的默认库。
- 第三方库:则是由一些社区开发者或者组织提供的扩展Python功能的模块或者包,它们可以帮助用户实现一些Python本身不具备或者不方便的功能,大大拓展了Python的性能。使用第三方库可以帮助用户高效完成编程任务,而不需要从0开发。常用的第三方库如下表。
数据分析 | numpy, pandas, scipy, matplotlib等 |
机器学习 | scikit-learn, tensorflow, pytorch等 |
图像处理 | PIL, opencv, skimage等 |
图形界面 | tkinter, PyQt, wxPython等 |
Web开发 | Django, Flask, Tornado等 |
网络编程 | request, urlib, scrapy, socket等 |
游戏开发 | pygame, cocos2d等 |
Pip,全称为“Package Installer for Python”,是Python的一个包管理工具,提供了对Python包的查找、下载、安装和卸载等功能。它允许用户从PyPI等源安装和管理额外的库和依赖。简单来说,Pip就是Python的“应用商店”,用户可以从中搜索并安装各种有用的工具和库。
PyPi(Python Package Index)是Python官方提供的统一的代码托管仓库,第三方库或自己开发的开源模块都可以发布到这里,供全世界共享。
可以利用Pip工具来安装和管理第三方库,也可以从国内外指定的源来下载,还可以通过国内特定的源来加速下载。
1.2 Pip 简介及其特点
Python拥有成千上万的宝藏库,这些库都存放在统一的仓库中(名为PyPi),pip相当于是这个库的管理员,可以从PyPi中找指定的包进行安装、卸载、升级、搜索等管理。pip的特点如下:
- Pip是Python标准库中的一个包,这个包是用来管理Python的第三方库。
- 由于Pip是Python的一个包,因此,使用pip之前必须确保先安装Python,否则就会因为无法识别pip命令而报错,具体如下图。但是,从Python 3.4开始,pip已经内置在Python中,无需再单独安装。
- 新安装的Python中仅自带了pip包,没有其他第三方库。可以通过路径C:\Users\HUAWEI\AppData\Local\Programs\Python\Python312\Lib\site-packages来查看。通过pip安装的包均在该路径下。
- 尽管Pip是Python管理工具,但是pip命令在Win+R,cmd命令行中使用,而不在Python里面使用。
- Pip最大的优点是不仅将我们需要的包下载下来,还会将该包相关的依赖下载下来。因此,Pip使用起来非常方便,是官方推荐的Python包管理工具,可以安装超过95%的第三方库。
1.3 Pip前的Python安装
Python安装时默认安装在C:\Users\HUAWEI\AppData\Local\Programs\Python\Python312路径下,其中,HUAWEI是每个PC的用户名,Python312是指Python的版本,这里指Python 3.12。
安装时注意勾选项。
这里可以看到,Python安装时已经自带了pip,只有先安装Python后才能使用pip。
通过pip命令安装的包,均在路径C:\Users\HUAWEI\AppData\Local\Programs\Python\Python312\Lib\site-packages下。
二、Pip常用命令
可以使用Pip命令来显示所有其所有的功能。
命令 | 功能 | 使用方法 |
install | 安装 | pip install pack_name |
uninstall | 卸载 | pip uninstall pack_name |
download | 下载,但不安装 | pip download pack_name |
list | 列出当前系统已安装的第三方包 | pip list |
freeze | 列出当前系统已安装的第三方包及其版本 | pip freeze |
show | 列出某个已安装包的具体信息 | pip show pack_name |
check | 检查已安装的软件包的依赖关系 | |
config | 管理本地和全局配置 | |
search | 联网搜索库名或摘要中的关键字 | pip search <搜索关键字> |
wheel | 按照要求创建包文件 | |
hash | 计算软件包档案的哈希值 | |
completion | 用于完成命令的帮助程序命令 | |
debug | 显示对调试有用的信息 | |
help | 查看帮助 | pip help install,显示install命令的帮助信息 |
三、Pip命令使用详解
3.1 Pip安装
pip install 包名 # 普通安装,自动从PyPI下载并安装该库及其依赖项
pip install 包名=version # 指定版本的安装,不写则安装最新版本
pip install <目录>/<文件名> # 从本地 *.whl 安装包
再次强调:
(1)pip命令安装的包路径在C:\Users\HUAWEI\AppData\Local\Programs\Python\Python312\Lib\site-packages下。
(2)有时候,pip安装一个包时可能顺便把另外一些包也安装了。例如:安装matplotlib时顺便把numpy等安装了,这时无需再次安装。
3.2 Pip卸载
pip uninstall 包名
3.3 升级库
pip install --upgrade 库名
3.4 Pip版本
pip --version # 检查pip是否已经安装以及其版本信息
pip -V # 显示pip版本及目录
3.5 升级pip
pip install --upgrade pip # 有时安装过程报错时可以升级pip后再尝试
3.6 列出已安装的库
pip list # 列出已经安装的包
pip list --outdated # 查看有新版本的第三方库,可显示现在安装的般般以及最新版本
pip list --o # 同 pip list --outdated
pip freeze # 查看已安装的包及其版本信息
pip freeze > xxx.txt # 可以将显示出来的信息保存到xxx.txt文件中
m2.txt 文件位于 C:\Users\HUAWEI 目录下。
3.7 展示某一个库的详细信息
pip show 库名 # 显示该库的版本、安装位置等详细信息
3.8 搜索包
pip search 包名
四、Pip使用过程中出现的问题及其解决方法
4.1 权限问题
某些系统下,只有管理员权限才能安装库,这是可以在命令前加sudo来解决,这在Linux环境下非常有用。
4.2 依赖冲突问题
有时候不同库之间可能存在依赖冲突,这时可以尝试使用虚拟环境(例如:conda)来隔离不同项目的依赖。
4.3 网络问题(换源)
安装过程中如果遇到网络错误,可以尝试更换源或者使用代理来解决。
pip命令默认使用的是国外的pypi 镜像(pypi.python.org),安装很慢,而且经常会出现超时导致安装失败。所以,使用国内的 pypi 镜像,可以极大地提高pip安装第三方包的速度。国内常用的第三方镜像源如下。
阿里云镜像源 http://mirrors.aliyun.com/pypi/simple/
清华大学镜像源 https://pypi.tuna.tsinghua.edu.cn/simple/
豆瓣镜像源 http://pypi.douban.com/simple/
中国科技大学镜像源 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学 http://pypi.hustunique.com/
山东理工大学 http://pypi.sdutlinux.org/
如果要临时使用第三方镜像源,只需要在安装时,通过pip命令的 -i 选项指定镜像源即可。例如:
pip install -i https://mirrors.bfsu.edu.cn/pypi/web/simple/ package_name
# 通过中国科学技术大学镜像源下载安装包