Home  >  Article  >  System Tutorial  >  pipx: Let you easily manage Python applications in Linux

pipx: Let you easily manage Python applications in Linux

WBOY
WBOYforward
2024-02-13 14:12:08968browse

If you are a Python enthusiast, you may often use the pip tool to install and manage your favorite Python packages and modules. However, did you know that pip has some drawbacks, such as the possibility of conflicting with your system package manager or the need to create a separate virtual environment for each application? Fortunately, there's a better option, and it's called pipx . pipx is a tool for installing and running Python applications in an isolated virtual environment. It allows you to easily manage Python applications in Linux. In this article, we will show you how to install and use pipx on Ubuntu and other Linux distributions.

However, in recent releases, pip users have encountered external management environment errors.

pipx:让你在 Linux 中轻松管理 Python 应用

error: externally-managed-environment

This is a "feature" added to avoid conflicts between Python packages installed via pip and the native package manager. Python expects you to use a separate virtual environment rather than installing packages globally via pip.

This is where pipx comes into play. It creates a new virtual environment for each app you install, and then creates links to local binaries in /bin at the global level. It's all automatic. It saves you time and energy.

Let’s see how to install and use pipx on Ubuntu and other Linux distributions.

Installing pipx on Ubuntu and other Linux

Installation is simple and can be installed on Ubuntu and Debian using the following command:

sudo apt update && sudo apt install pipx

For other distributions, please use your package manager and install it.

Once you have finished installing, add it to $PATH so you can access it from anywhere:

pipx ensurepath
pipx:让你在 Linux 中轻松管理 Python 应用

install pipx in ubuntu

Close the terminal and restart it. That's it! Now, let's see how to use it.

Use pipx

What is the main purpose of a package manager? Package installation, update and removal.

Let me show you how to use pipx to do the following:

  • Search package
  • Package installation
  • upgrade
  • Package removal

Let’s start with installation.

How to use pipx to install the package

To install a package using pipx you must follow a simple command syntax:

pipx install 

For example, here I installed a very useful program Cowsay:

pipx install cowsay
pipx:让你在 Linux 中轻松管理 Python 应用

install python packages in isolation using pipx in ubuntu

Similarly, if you want to install a specific version of a package, you must == followed by the version number, like this:

pipx install package==version

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

pipx install numpy==1.24.1
pipx:让你在 Linux 中轻松管理 Python 应用

如何搜索包

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

要搜索包,你需要安装 pypisearch

pipx install pypisearch

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

pypisearch python_package_name

在这里,我搜索了 neofetch:

pipx:让你在 Linux 中轻松管理 Python 应用

search python packages in Ubuntu

如何使用 pipx 升级包

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

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

pipx upgrade-all
pipx:让你在 Linux 中轻松管理 Python 应用

upgrade all the python packages at once in ubuntu

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

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

pipx upgrade package-name

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

pipx upgrade cowsay
pipx:让你在 Linux 中轻松管理 Python 应用

upgrade specific python package using pipx in ubuntu

如何使用 pipx 卸载包

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

pipx uninstall package_name

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

pipx uninstall numpy
pipx:让你在 Linux 中轻松管理 Python 应用

remove python packages using pipx in ubuntu

pip 还是 pipx?

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

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

The above is the detailed content of pipx: Let you easily manage Python applications in Linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:lxlinux.net. If there is any infringement, please contact admin@php.cn delete