AberSheeran
Aber Sheeran

pip 安装与脚本安装

起笔自
所属文集: Python-Package
共计 916 个字符
落笔于

很多著名的库,例如 poetry 虽然提供了 PyPi 包,但它们仍然推荐使用它们自身编写的安装脚本去安装。

这是为什么?

众所周知,使用 pip 命令默认是安装到系统的 python 环境里的。当你安装的包过多,总会遇到依赖冲突的事(如果没遇到,说明你很幸运)——一个库依赖于另一个库的 0.5 版本,而第三个库依赖于 1.2 版本,两个版本大相径庭完全无法兼容。就会导致你必须放弃一个。

而 poetry 等著名库的安装脚本会为你创建好虚拟环境,在虚拟环境中安装。看起来很美好,不过……对于新手而言,譬如我的几个朋友,他们对电脑没那么熟悉,如果你让他找 pip 安装的路径他们还算能勉强搞定。但这种对于他们来说像是黑魔法一样的脚本安装方式,卸载都是一件困难的事情。

其实这个问题的解决办法很简单,不再使用脚本安装。统统用 pipx 去安装。

pipx 是一个专门用于安装命令行工具的命令行工具。当然,折腾它的脚本安装方式也不是十分容易的事——如果你搞不明白 get-poetry.sh 的安装与卸载,那么肯定也对 pipx 的脚本安装与卸载迷迷糊糊的。

但这都不重要。直接使用系统的 pip 命令安装就好了。依赖冲突?除了 pipx 本身以外,其他命令行工具全部用 pipx 管理,这解决了冲突问题。

pip install -U pipx

pipx 的原理十分简单易懂:在安装命令时,它自动创建一个虚拟环境,并把你需要安装的包安装进去,将包安装后产生的可执行文件暴露在环境变量里。它本身就是使用 Python 编写的,十分适合在在各种需要安装很多发布在 PyPi 的命令行工具的系统上使用。

几个常用的命令,分别是安装、卸载与更新:

pipx install PACKAGE

pipx uninstall PACKAGE

pipx upgrade PACKAGE

以下是我自己安装的命令行工具:

  • pipx install docker-compose
  • pipx install poetry
  • pipx install pipenv
  • pipx install pdm
  • pipx install certbot
如果你觉得本文值得,不妨赏杯茶
poetry 使用指北
没有下一篇