pip install的使用场景介绍
来源:     阅读:8
易浩激活码
发布于 2025-10-22 15:08
查看主页

联网安装

联网安装应该是最简单,网上的段子是如果你可以一直pip install,那么你的项目离成功已经不远了。下面就简单介绍下如何能让你一直pip install。

本地安装

有些环境是没有网络环境的,需要自己下载包自己进行离线安装。离线安装的命令如下pip install ./路径/包名.whl。命令很简单,但难在如何解决安装依赖。

下载安装包(手动)

该章节不讲解如何查看依赖,只讲如何识别对应的python包,本文以pypi官网为准。样例是下载一个jpype1库。

  1. 登陆https://pypi.org/网站,在搜索栏中搜索jpype1库

pip install的使用场景介绍


  1. 包名不会重复,但可能会有许多类型的,请细心查看

pip install的使用场景介绍


  1. 选择包名,点击download,默认是最新版本,如果需要安装历史版本可以点击Release history

pip install的使用场景介绍


  1. 在选择安装包时有两个类型的包可以选择,一个是源码包,一个是编译包。提议选择编译包,这种包是别人按照的python版本,操作系统版本,系统架构做过编译的安装包,安装速度快(没有编译的步骤了)。

pip install的使用场景介绍


  1. 如何区分编译包,包名-版本-python版本-操作系统类型-系统架构.whl,根据实际环境下载即可

pip install的使用场景介绍


  1. 举另外一个例子,有些库兼容性是超级强的,它不挑python版本,操作系统版本,像下图

pip install的使用场景介绍


  1. 下载好的whl文件使用pip install ./路径/包名.whl安装即可。

下载安装包(自动)

上面的例子是手动下载安装包,隐性的逻辑就是人工处理包依赖。常见的就是找个干净环境安装一个核心包最后pip list一下看下总共哪些包安装了,都是哪些版本。但这种方式很容易出错,所以推荐大家用如下的方式进行处理。

  1. 先找一台能够上网的设备,这个设备的电脑操作系统,python版本最好要和目标环境一摸一样

  2. 然后使用pip download 包名==版本 -d ./offline_deps命令,使用pip命令联网下载所需的包依赖,例如:pip download -d ./offline_deps your_package.tar.gz

  3. 这里扩展一下命令,pip download的对象可以是whl文件,tar.gz包,通知也支持-i指定下载的源

pip install的使用场景介绍


  1. 还有一个逻辑是忽略安装依赖,pip install your_package.tar.gz --no-deps,这种方式慎用,除非你明确知道有些包是弱依赖(可有可无)

  2. 以上步骤完成后把下载好的安装包复制到目前环境,依次(按照依赖关系)pip install安装即可

编译安装

编译安装在pip中并不常见,主要pip太方便了,只要能联网就能pip安装。pip安装很爽,一直pip安装一直爽。但也无法排除极小的概率需要我们pip install 源码包。而且一旦我们碰到这种环境,多数是即不能联网而且pip环境干净的比我们兜还干净的环境,这种场景下第一需要做的就是下载源码包,第二就是下载构建编译环境的依赖库(大部分依赖库兼容性都很强,不需要再折腾它们)。

  1. 第一步下载我们的源码包,这里还以jpype1为例,源码包是jpype1-1.5.2.tar.gz

  2. 为什么会触发我安装源码包,这里也需要说明下,我把所有编译好的linux包全试了都报错,没办法了才思考编译安装

  3. 第二步是准备编译所需的依赖库(编译标准是PEP 517,编译安装时日志里会明确提示),常见的有setuptools,wheel以上两个是我根据报错提示补出来的,还有一个是网上提议的cython

  4. 另外就是再使用pip install 源码时pip 会默认创建一个临时的隔离环境(build isolation)来构建这些包,这个隔离环境包含了构建包所需的最小依赖集合。为了最大限度的只使用当前的环境构建包,可以使用--no-build-isolation 参数,它的作用是禁用这种隔离构建机制,让包在当前环境中直接进行构建。也就是说,它会跳过创建临时隔离环境这一步,直接使用当前 Python 环境中的依赖来构建和安装包。

  5. 以上资源都准备完毕后,pip install 源码即可,pip会先将源码编译成本地可以运行的执行,然后再进行安装

  6. 补充说明一点,有些包中配置信息不全,可能会出现包安装完毕了,但是包名unknown,版本0.0.0的情况。这种情况是由于源码包中的setup.py文件中缺少名称字段和版本字段,补全全两个字段即可。

pip install的使用场景介绍


  1. 完整的离线安装命令如下,包含编译安装的情况

其他

其他的一些比较常用的pip命令。

免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 系统环境
相关推荐
首页
搜索
订单
购物车
我的