在 Ubuntu 中安装 pip2025年03月17日 | 阅读 9 分钟 什么是 pip?Pip 可以被描述为安装 Python 包的工具。我们可以使用 Python 包索引(简称 PyPI)和 pip 的其他包索引下载、搜索和安装许多包。pip 用于安装和管理 Python 软件包。如果安装任何包,pip 会首先解决依赖关系,确定它们是否已安装,然后如果系统上未安装,则安装它们。此过程方便安装和管理所有 Python 软件包,例如 Python 包索引(简称 PyPI)中提到的那些。 Pip 也可以被描述为 “Pip Installs Packages” 的抽象。Pip 被称为一种通过命令行实现的包管理系统。Ubuntu 用户可以轻松地使用 pip 通过 Python 包索引安装多个包。此外,如果软件开发人员,它还允许我们为我们的 Python 项目安装多个 Python 包和模块。
在本文中,我们将解释如何在 Ubuntu 20.04 版本中为 Python 2 和 Python 3 安装 pip。此外,我们还将介绍安装基础知识以及如何使用 pip 处理 Python 包。 Pip 的历史2008 年,Pip 最初由 Ian Bicking(virtualenv 包的创建者)以 pyinstall 的形式发布,作为 easy_install 的替代品。Pip 被选为一个新名称,是创建者在他的博客文章中收到的众多建议之一。 根据 Ian Bicking 本人所说,这个标题是 “Pip Installs Packages” 的递归组合。 Python 打包机构(简称 PyPA)是为了接管 Bicking 的 virtualenv 和 Pip 维护而开发的,该机构由 Jannis Leidel、Brain Rosner 和 Carl Meyer 于 2011 年领导。随着 Pip 6.0 版本的发布,版本命名过程被修改为采用 X.Y 格式的版本,然后从版本标签中删除前导的 1。 开始之前Python 有两个版本,包括 Python 3 和 Python 2。从 Ubuntu 20.04 版本开始,Python 3 包含在基本系统安装中,而 Python 2 则通过 Universe 存储库提供安装。 许多用户都希望切换到 Python 3。全局安装 Python 模块时,强烈建议使用 apt 工具安装该模块的 deb 包,因为它们经过测试可以在所有 Ubuntu 系统上正常运行。Python 3 的包以 python3- 为前缀,Python 2 的包以 python2- 为前缀。 我们应该仅在特定模块没有 deb 包时才全局优先使用 pip 安装模块。我们应该只在虚拟环境中使用 pip。Python 的虚拟环境允许我们将 Python 模块安装到特定项目的独立位置,而不是全局安装。这样,我们就不必担心影响其他 Python 项目。 pip 用户指南运行 pip:它是一个命令行程序。当我们安装 pip 时,pip 命令会包含在我们的系统中,它可以从终端窗口执行,如下所示 pip 由 `python -m pip` 执行,其中 `python` 是我们指定的 Python 解释器。因此,`/usr/bin/python3.7 -m pip` 目录表示我们正在为位于 `/usr/bin/python3.7` 目录中的解释器运行 pip。 使用代理服务器: 当我们使用 PyPI 安装软件包时,pip 需要互联网访问,这在一些企业平台中需要最终的 HTTP 代理服务器。 pip 可以通过多种方式设置为从代理服务器连接
需求文件: 这些文件包含要使用 `pip install` 安装的项目列表,如下所示 需求文件仅仅是逻辑上位于文件中的 pip install 参数列表。请记住,我们不应依赖文件项目以特定顺序通过 pip 安装。此外,需求文件可以通过 URL 提供,因此它们可以保存在集中位置并提供服务。 需求文件的一些常见用途如下 需求文件可用于从 pip freeze 抓取结果以实现可重复安装。我们的需求文件包含在执行 pip freeze 期间安装的所有内容的固定版本。
约束文件: 这些文件被称为需求文件,它只管理系统中安装了哪个版本的需求,而不是它是否已安装。约束文件的内容和语法是一组需求文件,以及各种不允许的语法类型:约束必须包含名称,它们不能定义额外内容,并且它们不能是可变的。在语义方面,存在一个重要的区别:添加包不会触发约束文件中的包安装。 我们可以按以下方式使用约束文件 当我们不知道要安装什么东西时,约束文件的用途与需求文件相似。例如,假设一个名为“helloworld”的包在我们的环境中不起作用,所以我们有一个本地修补版本。我们安装的一些东西依赖于“helloworld”,而另一些则不依赖。 确保此修补版本被频繁使用的一种方法是手动检查我们安装的任何内容的依赖关系。此外,约束文件提供了一种更好的方法来完成上述操作。我们需要为我们的企业编写一个约束文件,并将其应用于所有地方。 递归升级“仅在需要时”`pip install --upgrade` 命令现在有了 `--upgrade-strategy` 选项,它管理 pip 如何控制依赖项升级。支持两种不同的升级策略,如下所述和解释
only-if-needed 是默认策略。它在 pip 10.0 中进行了编辑,因为如果升级冲突的依赖项,eager 策略会破坏行为。重要的是要记住,--upgrade 选项影响直接要求,而 --upgrade-strategy 选项影响间接要求。 用户安装对于安装,pip 2.6 版本提供了用户方案,这意味着每个 Python 发行版都支持一个特定于用户的不同安装位置。此安装模式通过定义选项(即 --user)来启用,以用于 pip install。 另一方面,用户方案可以通过配置环境变量,即 `PYTHONUSERBASE` 来个性化,这可以更新 `site.USER_BASE` 的值。 前提条件在我们开始之前,我们需要一个带有 sudo 用户的 Ubuntu 20.04 实例。如果我们还没有,那么我们可以随时使用一个完全托管的高性能云 VPS,只需 3.71 美元。 在 Ubuntu 20.04 中安装 pip我们可以使用 Python 官方软件包网站 (PyPI) 获取所有兼容软件包的列表。此外,我们还可以借助该网站获取有关安装过程的支持。 例如,如果我们希望安装一个像 “scrapy” 这样的软件包,它是用于网页抓取的软件包。此外,我们还可以获取软件包的文档,以便更好地理解。 要安装 PIP 文件,我们需要输入以下命令 ![]() 此命令会提示我们并询问我们是否希望安装它 (y/n),我们应该点击 "y" 进行安装过程,如下图所示 可以使用下面提到的命令来识别已安装的 pip 版本 ![]() 现在,如果我们想知道如何应用 pip 命令和其它可用功能,我们可以通过在终端中输入下面提到的命令来查看它们 ![]() 现在,正如我们从上图中所见,第一个命令用于安装包。所以,我们以安装 Python 包,即 scrapy 为例。我们可以通过输入以下命令来完成 ![]() 此外,我们还可以通过遵循完全相同的语法安装其他我们选择的软件包。 安装过程完成后,我们可以通过在终端中输入以下命令来查看软件包是否已安装 ![]() 上面的命令将显示所有已安装软件包的列表,我们可能需要向下滚动才能查看已安装的软件包。 使用 pip 升级包我们可以使用以下命令将已安装的软件包升级到当前版本 卸载 Python 包我们可以通过输入下面提到的命令来卸载我们安装的任何旧包 ![]() 为 Python 2 安装 pip对于 Python 2,pip 包在 universe 存储库中可用。但是,如果我们的系统上没有它,那么我们可以借助终端中的以下命令来安装它 ![]() 要更新包列表,我们可以输入下面提到的命令 ![]() 首先,我们将安装 Python 2 的最小软件包 ![]() 对于 Python 2,20.04 版本的 Ubuntu 中不包含 pip 包。因此,我们需要应用 pip 的安装脚本。命令如下 ![]() 然后,我们需要运行 Python 脚本和 python2 来在我们的系统上安装 pip。为此,我们可以使用以下命令 ![]() 安装过程后,我们可以通过输入以下命令检查 pip 版本 ![]() 如何在 Ubuntu 中使用 pip2 检查已安装的软件包我们可以使用终端中的以下命令列出所有使用 pip2 安装的软件包 ![]() 我们可以看到结果显示了使用 pip2 安装的包 在 Ubuntu 中使用 pip2 升级包此外,我们还可以使用 pip2 命令升级已安装的包。我们可以使用以下语法升级任何包 在 Ubuntu 中使用 pip2 卸载包如果您希望从我们的 Ubuntu 系统卸载任何包,我们可以使用 pip2 命令中的选项 “uninstall”。使用 pip2 卸载包的语法如下 在 Ubuntu 20.04 中卸载 Python3 的 pip对于 Python3,如果我们希望卸载 pip 包,那么我们可以通过在终端中输入以下命令来完成 ![]() 结论Python 代码运行速度更快,并且有多个模块可用于增强程序的功能。Python 是最容易学习和简化的编程语言之一。在本文中,我们学习了如何在 Ubuntu 20.04 操作系统中为 Python 3 和 Python 2 安装 pip 包。此外,我们还学习了如何卸载 pip 和包。 下一个主题重启 MySQL Ubuntu |
我们请求您订阅我们的新闻通讯以获取最新更新。