说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
Python 的三方库可以用 pip 命令进行安装和管理,操作起来十分方便,下边我们来介绍如何使用。
在 Python的安装章节 中,我们安装好 Python 就已经支持了 pip 命令。pip 是首选的安装程序,从Python 3.4开始,Python 就默认安装支持了。
可以使用以下命令查看是否支持,如果支持会显示帮助界面:
pip
# 也可以以下命令:
python -m pip
后边我们可以用以上两个前缀来执行命令,python -m pip
是 Python 加载 pip 库,来运行你后续的命令,效果一样,但如果电脑中存在多们 python 版本时可以指名安装在哪个版本下,如果无冲突建议直接使用 pip。
另外,多 Python 版本通常会注册多版本 pip 命名,如 pip 和 pip3 要分清。
附:https://pip.pypa.io/en/stable/user_guide/
命令语法:
pip <command> [options]
常用命令:
# 安装包
pip install numpy
# 安装多个包
pip install numpy requests
# 安装版本为 1.21.0 的 numpy
pip install numpy==1.21.0
# 从 requirements.txt 安装所有列出的包
pip install -r requirements.txt
# 升级 requests 库到最新版本
pip install --upgrade requests
pip install requests -U
# 显示已安装的包
pip list
# 显示包的信息,如版本、描述、安装路径、依赖等
pip show <包名>
# 列出所有有可用更新的包
pip list --outdated
# 生成 requirements.txt 文件
pip freeze > requirements.txt
# 下载包
pip download <包名>
# 下载包, 指定版本
pip download <包名>==1.3.1
# 卸载包
pip uninstall <包名>
# 查看命令帮助
pip help
pip 命令的包都可以在 https://pypi.org 官网上查看。
安装是最常见的操作,我们可以使用最简单的安装命令,安装一个包:
pip install pandas
我们也可以用空格写上其他包名,一次性安装:
pip install pandas requests
由于 pip 官网在国外,网络访问慢,可指定国内源快速下载安装,以下是清华大学的源:
pip install pandas matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple
如果安装过程中出现红色提示安装停止,可能是网络超时原因,可重新输入回车(或者按键盘向上键从历史调出命令回来安装,或者试试其他源如豆瓣 https://pypi.douban.com/simple 、阿里源 http://mirrors.aliyun.com/pypi/simple )再尝试安装。
有时候由于无法访问外网、网络不畅等原因,无法按上述即时下载方式安装,可以在对应网站下载对应的 .whl 文件,然后用以下命令下载:
python -m pip install D:/some-dir/some-file.whl
pip install /some-dir/some-file.whl
下载网址参考:
安装其所有的依赖库,如 xlwings 及其所有所依赖的三方库都会被安装:
pip install "xlwings[all]"
也可以选择所需功能的支持库,这些都是由三方包所定义的,比如 pandas 要支持 Excel 相关功能:
pip install "pandas[excel]"
则会同时安装 xlrd、xlsxwriter、openpyxl、pyxlsb 等相关库。如果多个功能则用逗号分隔:
pip install "pandas[hdf5, parquet, feather, spss, excel]"
具体用法要查询三方库的官方文档,以上 pandas 示例,需要 pandas 2.0 才支持(约 2023 年 3 月发布)。
上述安装,默认会给我们安装当前正式的最新的版本。但是,在我们安装后,可能有新的版本发布,我们就需要进行升级:
# 升级到最新版本
pip install pandas -U
# 安装指定版本
pip install pandas==1.3
以上也可以使用国内源进行升级。还有一种情况,我们需要安装指定的版本,因为有库库依赖的包版本过高可能也会报错:
pip install Django==3.0
# 可以指定超时时间,默认15秒
pip install Django==3.0 --timeout 30
要使用 pip 安装多个第三方库,你可以创建一个包含库名称及其版本的文本文件(通常命名为 requirements.txt),然后使用 pip install -r requirements.txt
命令一次性安装所有列出的库。以下是具体步骤:
1)创建 requirements.txt 文件:在你的项目根目录下创建一个名为 requirements.txt 的文件。内容格式如下(也可以不写版本号,安装最新的):
numpy==1.21.0
pandas==1.3.0
requests==2.25.1
2)使用 pip 安装库: 打开终端(或命令提示符),导航到包含 requirements.txt 文件的目录,然后运行以下命令:
pip install -r requirements.txt
pip 会读取 requirements.txt 文件并安装其中列出的所有库及其指定版本。
注意:
在使用 pip 时指定包的版本,可以帮助你确保项目依赖的一致性和稳定性。以下是版本指定的一些技巧和示例,每个示例都带有注释说明:
# 安装特定版本的包
pip install requests==2.25.1
# 只安装 requests 版本 2.25.1
# 安装最小版本的包
pip install requests>=2.25.1
# 安装 requests 版本不低于 2.25.1 的最新版本
# 安装特定范围内的版本
pip install requests>=2.20.0,<2.26.0
# 安装 requests 版本在 2.20.0(含)到 2.26.0(不含)之间的版本
# 安装不包含特定版本的包
pip install requests!=2.25.1
# 安装任何版本的 requests,除了 2.25.1
# 使用版本通配符安装包
pip install requests~=2.25
# 安装 requests 版本 2.25 及其后续 bug 修复版本(不包括 2.26)
# 在 requirements.txt 文件中指定包的版本
# 示例 requirements.txt 文件内容:
# 安装 requests 版本在 2.20.0(含)到 2.26.0(不含)之间的版本
requests>=2.20.0,<2.26.0
# 使用 constraints 文件限制版本
# 创建 constraints.txt 文件,内容如下:
# requests>=2.25.1
# 在安装包时使用 constraints 文件:
pip install -c constraints.txt some_package
# 使用 constraints.txt 文件限制 some_package 依赖的 requests 版本
# 安装预发布版本
pip install requests --pre
# 安装 requests 的预发布版本,如果有的话
# 安装特定的分支或标签(从 Git 仓库)
pip install git+https://github.com/psf/requests.git@main
# 从 GitHub 上的 requests 仓库的 main 分支安装最新版本
# 安装特定的分支或标签(从 Git 仓库)
pip install git+https://github.com/psf/requests.git@v2.25.1
# 从 GitHub 上的 requests 仓库的 v2.25.1 标签安装指定版本
版本指定技巧总结
==
确保完全一致。>=
确保至少满足最低要求。>=
和 < 组合确保包在某个版本范围内。!=
排除特定版本。~=
安装兼容版本,允许 bug 修复更新。--pre
安装预发布版本。git+https
安装特定的分支或标签版本。通过这些技巧,你可以更灵活地管理项目中的依赖版本,确保项目的稳定性和兼容性。
如果需要卸载的话可以使用命令:
pip uninstall Django
但是卸载时,不会卸载安装时自动安装的依赖包。
如果使用的 Miniconda/Anaconda 搭建的环境的话,可以使用 conda 命令进行包的安装管理:
# 创建新环境,<环境名称>, python 版本
conda create -n py38data python=3.8
# 进入、激活环境
conda activate py38data
# 安装包
conda install numpy
# 查看已安装的包
conda list
在极端情况下,比如我们无法联网或者命令安装失败等情况,就需要离线本地安装。基本的步骤是:
pip install xxx.whl
或者 python setup.py install
可以编写 Python 代码进行安装:
import pip
def install(package):
if hasattr(pip, 'main'):
pip.main(['install', package])
else:
pip._internal.main(['install', package])
或者以下方法:
import subprocess
import sys
def install(package):
subprocess.check_call([sys.executable, "-m", "pip", "install", package])
都可以调用安装:
install('pandas')
pip 还有许多其他有用的命令和选项。以下是一些更高级和特定用途的 pip 命令示例,每个命令都带有注释说明:
# 安装包并显示详细输出(调试时有用)
pip install requests --verbose
# 安装包时忽略已安装的包
pip install requests --ignore-installed
# 仅下载包,而不安装
pip download requests
# 安装特定的文件(如本地或远程的 .whl 文件)
pip install some-package.whl
# 安装开发版本的包
pip install --pre requests
# 安装时使用特定的索引(例如自定义 PyPI 镜像)
pip install requests --index-url https://pypi.example.com/simple
# 查找包的可用版本
pip install requests==
# 显示 pip 的版本
pip --version
# 升级 pip 自身
pip install --upgrade pip
# 列出 pip 命令及其简短描述
pip help
# 显示某个特定 pip 命令的帮助信息
pip help install
# 清理下载缓存
pip cache purge
# 检查某个包的依赖关系
pip show requests | grep Requires
# 在安装包时使用特定的代理
pip install requests --proxy http://user:pass@proxy.example.com:8080
# 检查已安装包的依赖是否有冲突
pip check
# 通过生成哈希来确保包的完整性
pip hash requests-2.25.1-py2.py3-none-any.whl
# 创建与环境无关的 requirements.txt 文件(排除虚拟环境中的包)
pip freeze --exclude-editable > requirements.txt
更新时间:2024-06-06 17:31:06 标签:python 库