有些情况我们pip一下包的时候会报错,可能因为延时或许其他不兼容的情况,这时候我们可以通过去网上下载该包的原文件,进行本地物理pip ,在安装网上下载的whl之前,先明白不同后缀的差异;whl下载网址:清华大学开源软件镜像站 | Tsinghua Open Source Mirror
在Python的生态环境中,.whl文件(全称为wheel文件)是一种预编译的二进制包,用于分发和安装Python库。
whl的不同后缀
win32 .whl:这是为32位Windows操作系统编译的Python包。由于它专门针对32位系统进行了优化和编译,因此只能在32位Windows上安装和使用,其他.whl:包括为64位Windows(如win_amd64)、Linux(如manylinux)、MacOS(如macosx)等不同操作系统和架构编译的Python包。每个.whl文件都明确指定了它所支持的操作系统和Python版本,对于所有.whl文件,都可以使用pip命令进行安装。
举例:
32位Windows:如numpy-1.20.3-cp38-cp38-win_amd32.whl,这是为32位Windows系统编译的;
64位Windows:如numpy-1.20.3-cp38-cp38-win_amd64.whl,这是为64位Windows系统编译的;
Linux:如matplotlib-3.4.3-cp38-cp38-manylinux1_x86_64.whl,这是为manylinux1兼容的Linux发行版上的64位系统编译的;
MacOS:如pandas-1.2.4-cp38-cp38-macosx_10_9_x86_64.whl,这是为MacOS上的64位系统编译的;
以下图为例详细说明:
文件名:numpy-1.20.3-cp38-cp38-win_amd64.whl类型:Python Wheel文件(.whl),这是一种预编译的Python包格式,便于跨平台安装。库名:numpy版本:1.20.3Python版本:cp8,即Python 3.8平台:win_arm64,表示这是为Windows操作系统下的ARM64架构编译的。本地安装
pip install 包whl的物理路径;
pip install D:\data\basemap-1.4.1-cp310-cp310-win32.whl #输入你的下载路径
安装包的特定版本
如果你想要安装特定版本的包,可以在包的源文件路径后加上==和版本号;
pip install numpy==1.20.3 # 注意等号前后不能有空格
卸载本地Python包
如果你想要卸载已经安装的本地包,可以使用pip命令的卸载选项。在命令提示符或终端中,执行以下命令:
pip uninstall numpy
大多数时候,即使你是通过wheel文件手动安装的包,pip也会将其添加到其管理的列表中。因此,你可以尝试使用pip的uninstall命令来卸载它,就像卸载任何其他通过pip安装的包一样。
但是,如果你确定pip不知道这个包(可能是因为某种原因没有正确注册),或者你想要确保卸载过程更加直接,你可以尝试以下步骤:
检查包是否通过pip安装:
pip show numpy
首先,尝试使用pip的list或show命令来查看包是否已安装,并获取其信息,如果这个命令返回了包的信息,那么你可以使用uninstall命令来卸载它。
如果pip show numpy没有返回任何信息,那么pip可能不知道这个包。这通常不太可能,因为通过wheel文件安装的包通常会被pip注册。不过,如果确实发生了这种情况,你可以尝试手动删除包文件,找到包文件所在的目录。对于Windows,这通常是Python的Lib\site-packages目录,但如果你使用了虚拟环境,它将在你的虚拟环境目录中的相应位置,导航到该目录,并查找与basemap相关的文件和文件夹会有一个名为numpy的文件夹和/或一些以numpy开头的.pyd、.pyc、.pyo等文件,删除这些文件和文件夹;
更多安装选项
pip install --pre package
这个命令用于安装指定包的“预发布”版本。预发布版本通常包括alpha、beta、rc(候选发布)等版本,这些版本可能包含新功能,但也可能存在未修复的错误或不稳定的问题。使用--pre选项,pip会搜索并安装最新版本的包,包括预发布版本。
pip install --no-deps package
这个命令用于安装指定的包,但不安装其依赖项。默认情况下,pip会安装你指定的包以及它依赖的所有其他包。然而,如果你只想安装这个包而不关心它的依赖项,可以使用--no-deps选项。这通常不推荐,因为缺少依赖项可能会导致包无法正常工作。
pip install -r requirements.txt
这个命令用于从requirements.txt文件中读取并安装所有指定的Python包及其依赖项。requirements.txt文件是一个文本文件,列出了项目所需的所有Python包及其版本号(可选)。这个文件通常用于项目依赖管理,确保项目的环境在不同开发者和生产环境中保持一致。使用-r选项,pip会读取该文件中的每一行,将其视为pip安装命令的输入,并安装所有指定的包及其依赖项。
文章仅用于分享个人学习成果与个人存档之用,分享知识,如有侵权,请联系作者进行删除。所有信息均基于作者的个人理解和经验,不代表任何官方立场或权威解读。