标签 pipx 下的文章

pipx 解决了流行的 pip 工具的不足之处。学习在 Linux 中安装和使用 pipx

pip 是一种流行的工具,用于从 Python 包索引 中安装 Python 包和模块。

然而,在最近的发行版本中,pip 用户遇到了 外部管理环境错误

error: externally-managed-environment

这是为避免通过 pip 安装的 Python 包与本机包管理器之间发生冲突而添加的“功能”。Python 希望你使用单独的虚拟环境,而不是通过 pip 在全局安装包。

这就是 pipx 发挥作用的地方。它为你安装的每个应用创建一个新的虚拟环境,然后在全局级别的 /bin 中创建到本地二进制文件的链接。这一切都是自动的。它为你节省时间和精力。

让我们看看如何在 Ubuntu 和其他 Linux 发行版上安装和使用 pipx

在 Ubuntu 和其他 Linux 上安装 pipx

安装很简单,可以在 Ubuntu 和 Debian 上使用以下命令安装:

sudo apt update && sudo apt install pipx

对于其他发行版,请使用你的包管理器并安装它。

完成安装后,将其添加到 $PATH 以便可以从任何地方访问它:

pipx ensurepath

install pipx in ubuntu

关闭终端并重新启动它。这就完成了! 现在,让我们看看如何使用它。

使用 pipx

包管理器的主要用途是什么? 软件包安装、更新和删除。

让我向你展示如何使用 pipx 执行以下操作:

  • 搜索包
  • 包安装
  • 升级
  • 包移除

让我们从安装开始。

如何使用 pipx 安装包

要使用 pipx 安装包,你必须遵循一个简单的命令语法:

pipx install <package_name>

例如,在这里,我安装了一个非常有用的程序 Cowsay:

pipx install cowsay

install python packages in isolation using pipx in ubuntu

同样,如果你想安装特定版本的包,你必须在 == 后跟上版本号,如下所示:

pipx install package==version

例如,在这里,我安装了 1.24.1 版本的 numpy:

pipx install numpy==1.24.1

如何搜索包

pipx 程序没有搜索功能(因为 PyPI 的 API 使用限制)但这并不意味着你不能搜索 Python 包。

要搜索包,你需要安装 pypisearch

pipx install pypisearch

完成后,你可以使用 pypisearch 命令搜索包:

pypisearch python_package_name

在这里,我搜索了 neofetch:

search python packages in Ubuntu

如何使用 pipx 升级包

与任何其他现代包管理器一样,你可以一次升级所有包,也可以一次升级一个包。

要一次升级所有软件包,你只需执行以下命令:

pipx upgrade-all

upgrade all the python packages at once in ubuntu

如你所见,它将 numpy 升级到最新版本。

但是如果你想升级一个特定的包,你可以这样做:

pipx upgrade package-name

假设我想将 cowsay 包升级到最新版本,那么,我将使用以下命令:

pipx upgrade cowsay

upgrade specific python package using pipx in ubuntu

如何使用 pipx 卸载包

要删除包,你必须使用 uninstall 标志,如下所示:

pipx uninstall package_name

为了供你参考,在这里,我从我的系统中删除了 numpy

pipx uninstall numpy

remove python packages using pipx in ubuntu

pip 还是 pipx?

pip 的限制影响了最终用户对它的使用。值得庆幸的是,pipx 提供了急需的替代方案。它符合使用虚拟环境的 Python 准则,同时允许已安装的应用在全局范围内可用。

对于不是 Python 应用开发的最终用户,这提供了使用发行版仓库中不可用的 Python 应用的选项。

希望本教程对你有所帮助。如果你有任何问题或建议,请告诉我。

(题图:MJ/fc6190e2-a412-443e-a83c-91fce1dcf695)


via: https://itsfoss.com/install-pipx-ubuntu/

作者:Sagar Sharma 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

我们始终建议在虚拟环境中安装 Python 应用以避免彼此冲突。Pip 包管理器可以帮助我们在隔离的环境中安装 Python 应用,我们使用两个工具,即 venvvirtualenv。还有一个 Python.org 推荐的名为 Pipenv 的 Python 包管理器也可以用来安装 Python 应用。与 Pip 不同,Pipenv 默认会自动创建虚拟环境。这意味着你不再需要为项目手动创建虚拟环境。今天,我偶然发现了一个名为 “Pipx” 的类似工具,它是一个自由开源程序,允许你在隔离的虚拟环境中安装和运行 Python 应用。

使用 Pipx,我们可以轻松安装 PyPI 中托管的数千个 Python 应用,而不会有太多麻烦。好的是,你可以使用常规用户权限执行所有操作。你不需要成为 “root” 用户或不需要具有 “sudo” 权限。值得一提的是,Pipx 可以从临时环境运行程序,而无需安装它。当你经常测试同一程序的多个版本时,这将非常方便。随 Pipx 一起安装的软件包可以随时列出、升级或卸载。Pipx 是一个跨平台的程序,因此它可以在 Linux、Mac OS 和 Windows 上运行。

安装 Pipx

Python 3.6+ 、Pip 和 venv 模块是安装 pipx 所必需的。确保按照以下指南中的说明安装它们。

此处,需要 venv 来创建虚拟环境。

接下来,运行以下命令安装 Pipx。

$ python3 -m pip install --user pipx
$ python3 -m userpath append ~/.local/bin

pipx 二进制文件的默认位置是 ~/.local/bin。你可以使用 PIPX_BIN_DIR 环境变量覆盖它。如果要覆盖 PIPX_BIN_DIR,只需运行 userpath append $PIPX_BIN_DIR,确保它在你的路径中。

Pipx 的默认虚拟环境位置是 ~/.local/pipx。这可以用环境变量 PIPX_HOME 覆盖。

让我们继续看看如何使用 Pipx 安装 Python 应用。

使用 Pipx 在隔离环境中安装和运行 Python 应用

以下是 Pipx 入门的几个例子

安装 Python 包

要全局安装 Python 应用,例如 cowsay,请运行:

$ pipx install cowsay

此命令将自动创建虚拟环境,在其中安装包并包的可执行文件放在 $PATH 中。

示例输出:

installed package cowsay 2.0.3, Python 3.6.8
These binaries are now globally available
- cowsay
done! ✨ ? ✨

1

使用 Pipx 安装 Python 应用

让我们测试新安装的 cowsay 程序:

1

在这里,我从官方网站上摘取了这些例子。你可以安装/测试任何其他的 Python 包。

列出 Python 包

要使用 Pipx 列出所有已安装的应用,请运行:

$ pipx list

示例输出:

venvs are in /home/sk/.local/pipx/venvs
binaries are exposed on your $PATH at /home/sk/.local/bin
package cowsay 2.0.3, Python 3.6.8
- cowsay

如果你尚未安装任何软件包,你将看到以下输出:

nothing has been installed with pipx ?

升级包

要升级包,只需执行以下操作:

$ pipx upgrade cowsay

要一次性升级所有已安装的软件包,请使用:

$ pipx upgrade-all

从临时虚拟环境运行应用

有时,你可能希望运行特定的 Python 程序,但并不实际安装它。

$ pipx run pycowsay moooo

1

在临时隔离虚拟环境中运行 Python 应用

此命令实际上并不安装指定程序,而是从临时虚拟环境运行它。你可以使用此命令快速测试 Python 应用。

你甚至可以直接运行 .py 文件。

$ pipx run https://gist.githubusercontent.com/cs01/fa721a17a326e551ede048c5088f9e0f/raw/6bdfbb6e9c1132b1c38fdd2f195d4a24c540c324/pipx-demo.py
pipx is working!

卸载软件包

可以使用以下命令卸载软件包:

$ pipx uninstall cowsay

要删除所有已安装的包:

$ pipx uninstall-all

获得帮助

要查看帮助部分,请运行:

$ pipx --help

就是这些了。如果你一直在寻找安全,方便和可靠的程序来安装和运行 Python 应用,Pipx 可能是一个不错的选择。

资源:


via: https://www.ostechnix.com/pipx-install-and-run-python-applications-in-isolated-environments/

作者:sk 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出