20分钟拿下!Python pip 功能大全
点赞、收藏、加关注,下次找我不迷路
不管你是刚入门的小白,还是有一定经验想查漏补缺的学习者,这篇文章都能让你把 pip 的功能摸得明明白白,轻松玩转 Python 包管理!
一、pip 是什么?为啥要学它?
咱们可以把 Python 比作一个超级工厂,而 pip 就是这个工厂里的 "物流总管"。工厂生产各种产品(也就是我们说的 Python 包),当我们需要某个产品来完成特定任务时,pip 就负责帮我们把这个产品快速、准确地送到工厂里。比如说,我们想让 Python 具备发送网络请求的能力,就需要安装 requests 这个包,这时候 pip 就派上大用场啦!
而且,在 Python 的世界里,有成千上万的包等着我们去使用,这些包能帮我们实现各种强大的功能,从数据分析到人工智能,从网页开发到游戏制作,应有尽有。而 pip 就是我们获取这些包的最主要工具,学会了 pip,就相当于拿到了打开 Python 丰富功能宝库的钥匙。
二、pip 的基础操作:安装、升级、卸载包
(一)安装包:把想要的包带回家
这是 pip 最常用的功能之一啦。比如说我们要安装一个用来发送网络请求的包 requests,只需要在命令行里输入一行简单的命令就行。
命令格式:pip install 包名
举个栗子:
pip install requests
这时候,pip 就会去 Python 的包仓库(PyPI)里找到 requests 这个包,然后下载并安装到我们的电脑上。安装完成后,我们就可以在 Python 代码里使用 requests 来发送网络请求啦。
如果我们想安装指定版本的包呢?比如我们想安装 requests 的 2.26.0 版本,只需要在包名后面加上==版本号就行。
命令格式:pip install 包名==版本号
举个栗子:
pip install requests==2.26.0
还有一种情况,有时候我们下载包的速度很慢,这可能是因为默认的包仓库服务器在国外,这时候我们可以使用国内的镜像源来加速下载。比如使用清华大学的镜像源,命令就是:
命令格式:pip install -i
https://pypi.tuna.tsinghua.edu.cn/simple/ 包名
举个栗子:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ requests
(二)升级包:让包保持最新状态
包就像我们的手机 APP,开发者会不断更新优化,修复 bug,增加新功能。所以我们也需要时不时地把包升级到最新版本。
命令格式:pip install --upgrade 包名 或者 pip install -U 包名
举个栗子:
pip install --upgrade requests
或者
pip install -U requests
这样,pip 就会把 requests 包升级到最新版本啦。
(三)卸载包:把不需要的包送走
当我们不再需要某个包的时候,就可以把它卸载掉,释放电脑的空间。
命令格式:pip uninstall 包名
举个栗子:
pip uninstall requests
这时候,pip 会问我们是否确定要卸载,输入y然后回车,就可以把 requests 包卸载掉啦。
基础操作命令总结:
操作类型 | 命令格式 | 例子 |
安装最新版本包 | pip install 包名 | pip install requests |
安装指定版本包 | pip install 包名 == 版本号 | pip install requests==2.26.0 |
使用国内镜像源安装 | pip install -i 镜像源地址 包名 | pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ requests |
升级包 | pip install --upgrade 包名 或 pip install -U 包名 | pip install --upgrade requests |
卸载包 | pip uninstall 包名 | pip uninstall requests |
小口诀:
安装包,install 跟包名,指定版本加双等,镜像加速换地址;
升级包,--upgrade 别忘记,或者 - U 来代替;
卸载包,uninstall 走一波,确认卸载输个 y。
三、查看已安装的包:看看家里都有哪些包
有时候我们想知道自己的电脑上已经安装了哪些 Python 包,这时候就需要用到 pip 的查看功能啦。
(一)查看所有已安装的包
命令格式:pip list
执行这个命令后,会列出所有安装的包以及它们的版本号,看起来就像这样:
Package Version
---------- -------
pip 23.1.2
requests 2.26.0
setuptools 65.5.1
(二)查看已安装包的详细信息
如果我们想了解某个包的详细信息,比如作者、描述、安装位置等,可以使用pip show命令。
命令格式:pip show 包名
举个栗子:
pip show requests
执行后会显示 requests 包的详细信息,比如:
Name: requests
Version: 2.26.0
Summary: Python HTTP for Humans.
Home-page: https://requests.readthedocs.io
Author: Kenneth Reitz
Author-email: me@kennethreitz.org
License: Apache 2.0
Location: c:\python39\lib\site-packages
Requires: certifi, charset-normalizer, idna, urllib3
Required-by:
小口诀:
想看已装包,list 来报道,
详细信息要查看,show 后跟包名。
四、搜索包:在包的海洋里找到你想要的
当我们不知道某个功能需要哪个包来实现,或者想看看有没有更合适的包时,就可以使用 pip 的搜索功能。
命令格式:pip search 关键词
举个栗子:
比如我们想找和数据分析相关的包,就可以输入:
pip search data analysis
这时候,pip 会在 PyPI 上搜索包含 "data analysis" 关键词的包,并列出相关的结果,比如 pandas、numpy、matplotlib 等包都会被搜索出来,还会显示每个包的简要描述,方便我们选择。
五、其他实用功能
(一)查看 pip 的版本
命令格式:pip --version 或者 pip -V
执行后会显示 pip 的版本号,比如:
pip 23.1.2 from c:\python39\lib\site-packages\pip (python 3.9)
(二)升级 pip
pip 本身也会不断更新,为了使用最新的功能和更好的体验,我们需要定期升级 pip。
命令格式:python -m pip install --upgrade pip
(三)导出已安装的包列表:备份你的包清单
当我们在一台电脑上安装了很多包,想在另一台电脑上配置相同的环境时,就可以先导出已安装的包列表,然后在另一台电脑上根据这个列表安装包。
导出命令:pip freeze > requirements.txt
这个命令会把所有已安装的包及其版本号保存到 requirements.txt 文件中。
安装命令:pip install -r requirements.txt
这样,就可以根据 requirements.txt 文件中的列表安装相应的包啦。
小口诀:
看版本,--version 或 - V;
升级 pip,python -m 别忘记;
导出列表 freeze,安装就用 - r 加文件。
六、常见问题解决
(一)找不到命令怎么办?
有时候我们在命令行输入 pip 命令时,会提示 "pip 不是内部或外部命令,也不是可运行的程序或批处理文件"。这通常是因为没有将 Python 的安装路径添加到系统的环境变量中。解决方法是:重新安装 Python,在安装过程中勾选 "Add Python to PATH" 选项,或者手动将 Python 安装目录下的 Scripts 文件夹(比如 C:\Python39\Scripts)添加到系统环境变量中。
(二)安装包时出现错误怎么办?
如果安装包时出现错误,首先检查网络是否正常,然后可以尝试使用国内镜像源重新安装。如果还是不行,可以查看错误信息,根据错误提示进行排查,或者在网上搜索错误信息,看看其他小伙伴是怎么解决的。
(三)包的版本冲突怎么办?
有时候安装某个包时,会提示版本冲突,这时候可以尝试指定一个兼容的版本进行安装,或者升级或降级相关的包来解决冲突。
七、pip常用命令解释
pip 命令的参数非常多,下面列出一些最常用的参数:
- --version:显示 pip 的版本号。
- --help:显示帮助信息。
- -q, --quiet:不输出任何信息。
- -v, --verbose:输出详细的信息。
- -c, --constraint:指定依赖关系文件。
- -r, --requirements:指定依赖关系文件。
- --no-index:不使用 PyPI 上的索引。
- --find-links:在指定的 URL 中查找包。
- --trusted-host:指定下载的主机名。
- --no-binary:不使用预编译的二进制文件。
- --cache-dir:指定缓存目录。
- --src:指定源码目录。
- --build:指定构建目录。
- --ignore-installed:忽略已安装的包。
- --upgrade:升级已安装的包。
- --force-reinstall:强制重新安装包。
- --no-deps:不安装依赖关系。
- --editable:安装可编辑模式。
- --index-url:指定 PyPI 的 URL。
- --extra-index-url:指定额外的索引 URL。
- --isolated:创建一个独立的环境。