大家好,我是水滴~~
本文将介绍了 Python 的包管理器 pip 的基本使用、常用命令、帮助信息,以及一些常见问题。文章内容包含大量的示例代码,希望能够帮助新手同学快速入门。
《Python入门核心技术》专栏总目录・点这里
文章目录
- 1. 包管理器
- 1.1 安装pip
- 1.2 升级pip
- 1.3 卸载pip
- 2. 常用命令
- 2.1 安装包
- 2.2 安装指定版本的包
- 2.3 升级包
- 2.4 卸载包
- 2.5 显示已安装的包
- 2.6 查看包的详细信息
- 2.7 导出和导入依赖
- 3. 帮助信息
- 3.1 语法
- 3.2 命令
- 3.3 通用选项
- 4. 一些疑问
- 4.1 安装包的资源从哪儿来?
- 4.2 如何指定国内镜像源来安装?
- 4.2.1 配置镜像源
- 4.2.2 临时指定镜像源
- 4.3 包被安装到哪儿去了?
- 5. 总结
在Python开发中,使用各种功能强大的第三方库是非常常见的。而pip(Preferred Installer Program)是Python的包管理器,它可以帮助我们方便地安装、升级和管理Python包。本文将介绍pip的使用方法和常见操作,以及一些实用的示例代码。
1. 包管理器
1.1 安装pip
在开始之前,我们需要确保pip已经安装在我们的系统上。对于较新的Python版本(从Python 3.4开始),pip通常已经默认安装了。可以通过在命令行中输入以下命令来检查是否已安装pip:
pip --version
如果已经安装了pip,它将显示pip的版本信息。如果未安装,可以使用下面命令安装:
python -m ensurepip --upgrade
1.2 升级pip
要升级pip,可以使用以下命令:
pip install --upgrade pip
这会使用当前安装的 pip
版本来升级到最新版本。
1.3 卸载pip
要卸载pip,可以使用以下命令:
pip uninstall pip
2. 常用命令
下面这些命令非常之常用,需要你能够背过。
2.1 安装包
要安装一个Python包,可以使用以下命令:
pip install package_name
其中,package_name
是要安装的包的名称。例如,要安装名为requests
的包,可以运行以下命令:
pip install requests
2.2 安装指定版本的包
如果想要安装指定版本的包,可以使用以下命令:
pip install package_name==version_number
将 package_name
替换为包的名称,version_number
替换为你想要安装的具体版本号。
例如,要安装 requests
包的 2.25.1 版本,你可以运行以下命令:
pip install requests==2.25.1
pip 将会下载并安装指定版本的包。请注意,如果指定的版本不存在或不可用,pip 将会报错。
2.3 升级包
要升级已安装的包到最新版本,可以使用以下命令:
pip install --upgrade package_name
例如,要升级requests
包,可以运行以下命令:
pip install --upgrade requests
2.4 卸载包
要卸载已安装的包,可以使用以下命令:
pip uninstall package_name
例如,要卸载requests
包,可以运行以下命令:
pip uninstall requests
2.5 显示已安装的包
要查看已安装的包及其版本信息,可以使用以下命令:
pip list
这将显示已安装包的列表和其对应的版本号。
例如:
aliyun-python-sdk-core 2.14.0
aliyun-python-sdk-kms 2.16.2
async-timeout 4.0.3
Flask 3.0.0
idna 3.6
itsdangerous 2.1.2
Jinja2 3.1.2
jmespath 0.10.0
MarkupSafe 2.1.3
mysql-connector-python 8.2.0
pip 21.3.1
psutil 5.9.7
pycparser 2.21
pycryptodome 3.19.0
redis 5.0.1
requests 2.31.0
setuptools 60.2.0
six 1.16.0
urllib3 2.1.0
Werkzeug 3.0.1
wheel 0.37.1
2.6 查看包的详细信息
要查看特定包的详细信息,包括描述、作者、版本等,可以使用以下命令:
pip show package_name
例如,要查看requests
包的详细信息,可以运行以下命令:
pip show requests
2.7 导出和导入依赖
为了方便共享项目,可以将项目的依赖项导出到一个文件中,以便其他人可以轻松地安装相同的依赖项。使用以下命令导出依赖项:
pip freeze > requirements.txt
这将把项目的所有依赖写入到requirements.txt
文件中。
其他人可以使用以下命令根据requirements.txt
文件安装相同的依赖项:
pip install -r requirements.txt
更多命令介绍,请看下面的“帮助信息”章节
3. 帮助信息
使用下面命令可以获取 pip 的帮助信息:
pip --help
下面是对该帮助信息进行的翻译。
3.1 语法
pip <命令> [选项]
3.2 命令
命令 | 描述 |
---|---|
install | 安装包 |
download | 下载包 |
uninstall | 卸载包 |
freeze | 以 requirements 格式输出已安装的包 |
list | 列出已安装的包 |
show | 显示已安装包的信息 |
check | 验证已安装的包具有兼容的依赖项 |
config | 管理本地和全局配置 |
search | 在 PyPI 上搜索包 |
cache | 检查和管理 pip 的 wheel 缓存 |
index | 检查包索引中可用的信息 |
wheel | 根据你的要求构建 wheel |
hash | 计算包存档的哈希值 |
completion | 用于命令补全的辅助命令 |
debug | 显示用于调试的信息 |
help | 显示命令的帮助信息 |
3.3 通用选项
选项 | 描述 |
---|---|
-h, --help | 显示帮助信息 |
–debug | 使未处理的异常在主要子程序之外传播,而不是将其记录到 stderr |
–isolated | 以隔离模式运行 pip,忽略环境变量和用户配置 |
-v, --verbose | 提供更多输出。选项可累加使用,最多可使用 3 次 |
-V, --version | 显示版本并退出 |
-q, --quiet | 提供较少的输出。选项可累加使用,最多可使用 3 次(对应 WARNING、ERROR 和 CRITICAL 日志级别) |
–log
| 指定详细添加日志的路径 |
–no-input | 禁止提示输入 |
–proxy | 以 [user:passwd@]proxy.server:port 的形式指定代理 |
–retries | 每个连接的最大重试次数(默认为 5 次) |
–timeout | 设置套接字超时时间(默认为 15 秒) |
–exists-action | 当路径已存在时的默认操作:(s)witch 切换,(i)gnore 忽略,(w)ipe 清除,(b)ackup 备份,(a)bort 中止 |
–trusted-host | 将此主机或主机:端口对标记为受信任,即使它没有有效或任何 HTTPS |
–cert
| PEM 编码的 CA 证书束的路径。如果提供,将覆盖默认设置。有关更多信息,请参阅 pip 文档中的 “SSL Certificate Verification” |
–client-cert
| SSL 客户端证书的路径,一个包含私钥和 PEM 格式证书的单个文件 |
–cache-dir
| 将缓存数据存储在
|
–no-cache-dir | 禁用缓存 |
–disable-pip-version-check | 不定期检查 PyPI 是否有可供下载的新版本 pip。与 --no-index 一起使用 |
–no-color | 禁止彩色输出 |
–no-python-version-warning | 抑制即将不受支持的 Python 版本的弃用警告 |
–use-feature | 启用可能与向后兼容性不兼容的新功能 |
–use-deprecated | 启用即将在未来移除的弃用功能 |
4. 一些疑问
4.1 安装包的资源从哪儿来?
pip
安装的包资源来自于 Python Package Index(PyPI)以及其他可配置的包索引源。
Python Package Index(PyPI)是一个公共的包索引,它存储了大量的 Python 包资源。PyPI 是默认的包索引源,当你使用 pip
安装包时,它会从 PyPI 下载包资源。
除了 PyPI,你可以配置 pip
使用其他的包索引源。这些包索引源可以是公共的或私有的,提供不同的包资源集合。例如,你可以使用内部的企业包索引源或第三方的公共包索引源。
当你运行 pip
安装包时,它会首先查询所配置的包索引源,然后下载包资源并安装到你的 Python 环境中。pip
还会处理包的依赖关系,确保所需的其他包也被正确安装。
4.2 如何指定国内镜像源来安装?
在国内使用 PyPI 是很慢的,可以通过配置国内的镜像源来加快 pip
安装包的速度。镜像源是在国内提供的服务器,存储了 PyPI 的包资源的副本,因此可以更快地下载和安装包。
以下是一些常见的国内镜像源,你可以根据自己的需求选择其中之一:
- 清华大学镜像:https://pypi.tuna.tsinghua.edu.cn/simple
- 阿里云镜像:https://mirrors.aliyun.com/pypi/simple
- 豆瓣镜像:https://pypi.doubanio.com/simple
- 中国科技大学镜像:https://pypi.mirrors.ustc.edu.cn/simple
- 华中理工大学:http://pypi.hustunique.com
- 山东理工大学:http://pypi.sdutlinux.org
4.2.1 配置镜像源
你可以按照以下步骤来配置镜像源:
打开 pip 的配置文件pip.conf
,该文件通常位于用户主目录下的 .pip
文件夹中。如果没有该文件夹或文件,可以在.pip
文件夹中创建一个名为 pip.conf
的文件。
在 pip.conf
文件中添加以下内容(以阿里云镜像为例):
[global]
index-url = https://mirrors.aliyun.com/pypi/simple
配置完成后,pip
将会使用国内镜像源来下载和安装包,从而提高下载速度。
请注意,
pip.conf
文件中的配置选项以[global]
开头,表示它们是应用于整个 pip 工具的全局配置。
4.2.2 临时指定镜像源
你还可以使用 pip 的命令行参数来临时指定镜像源,而不需要修改配置文件。例如:
pip install package_name -i https://mirrors.aliyun.com/pypi/simple
这将使用阿里云镜像源来安装指定的包。
4.3 包被安装到哪儿去了?
当你使用 pip
安装包时,默认情况下,包将被安装到 Python 环境的相应目录中。具体的安装位置取决于你所使用的操作系统和 Python 环境的配置。
在 Windows 上,默认位置为 PYTHON_HOME\Lib\site-packages
;在类 Linux 系统上,默认位置为 /usr/lib/pythonXX/site-packages
或 /usr/local/lib/pythonXX/site-packages
。
另外,如果你使用虚拟环境(如 venv
、virtualenv
等),则包将被安装到虚拟环境的目录中,而不是全局或用户目录。
5. 总结
本文介绍了Python包管理器pip的使用指南。首先,我们了解了如何检查pip是否已安装,并提供了安装pip的指导。然后,我们详细介绍了pip的基本使用方法,包括安装、升级和卸载包,以及显示已安装的包和搜索包的方法。我们还学习了如何导出和导入依赖项,以及如何查看包的详细信息。
最后,我们介绍了 pip 命令的帮助信息,并回答了一些常用问题。
通过本文,读者将学会使用pip来管理和安装Python包,从而方便地使用各种功能强大的第三方库,提高开发效率和代码复用性。
更多内容见官方文档:
- https://docs.python.org/zh-cn/3/tutorial/venv.html#managing-packages-with-pip
- https://pip.pypa.io/