在本教程中,我们将考虑如何在 CentOS 8 上启用 Python 2 和 Python 3。在 CentOS 的早期发行版中,默认情况下可以使用未版本化的 Python 命令。
CentOS 安装完成后,只需在终端中运行“python”命令即可进入 Python shell。
矛盾的是,CentOS 8 默认没有未版本化的 Python 命令。 这就引出了一个问题,为什么? RedHat 表示,这种选择是有意“避免将用户锁定在特定版本的 Python 中”。 目前,RedHat 8 默认隐式使用 Python 3.6,尽管额外提供了 Python 2.7 来维护现有软件。
以前,CentOS 发行版中未版本化的 Python 命令虽然方便,但会带来特定的问题。 未版本化的 Python 通常会指向 Python 2 解释器,但由于 Python 2 现在处于 EOL(生命周期结束),这会因为几个原因而成为问题。 简单地将命令重新指向 Python 3 似乎是一个简单的解决方案,但由于可能与版本控制混淆,这在许多层面上都会出现问题。 与其因为熟悉而继续将“python”命令指向默认版本的 Python,或者将其指向 Python 3 以跟上时代的步伐,而是选择不再包含默认的“python”命令。
这并不是说 Python 在 CentOS 上默认不再可用。 Yum 和新的 DNF 包管理器都特别依赖 Python。 他们现在所依赖的 Python 版本称为“Platform-Python”。 出于所有意图和目的,“Platform-Python”版本不应用作使用 Python 的交互方式。
先决条件
- 与往常一样,我们将在终端中以 root 用户身份在全新安装的 CentOS 8 服务器上工作。
- Linux中命令行界面的常识
安装 Python 2
第 1 步:更新环境
在安装新软件之前,确保我们所有的系统包都是最新的,这总是一个好主意。 为此,我们将利用新的包管理软件 DNF。
[root@centos8 ~]# dnf update -y
第 2 步:安装 Python 2
现在环境已经更新,让我们继续使用 DNF 安装 Python 2。幸运的是,Python 2 和 3 都包含在 CentOS 8 基础包存储库中,因此安装很简单。
oot@centos8 ~]# dnf install python2 -y
第 3 步:验证 Python 2 安装
要验证 Python 2 是否已安装,我们可以运行带有版本标志的简单“python2”命令。
[root@centos8 ~]# python2 -V
Python 2.7.16
第 4 步:运行 Python 2
随后,为了访问 Python 2 shell,我们可以运行以下命令。
[root@centos8 ~]# python2
Python 2.7.16 (default, Nov 17 2019, 00:07:27)
[GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
就是这样! Python 2 现已安装! 需要注意的是,Python包安装程序画中画 安装 Python 2 时也会默认安装,因此您应该能够立即开始使用 Python 包。
安装 Python 3
第 1 步:更新环境
再一次,为了保持最佳实践,让我们继续确保我们的系统包都是最新的。
[root@centos8 ~]# dnf update -y
第 2 步:安装 Python 3
我们现在准备安装 Python 3。
oot@centos8 ~]# dnf install python3 -y
第 3 步:验证 Python 3 安装
我们可以像使用 Python 2 一样验证 Python 3 的安装和版本。
[root@centos8 ~]# python3 -V
Python 3.7.5rc1
第 4 步:运行 Python 3
接下来,我们可以通过运行以下命令进入 Python 3 shell 环境。
[root@centos8 ~]# python3
Python 3.6.8 (default, Nov 21 2019, 19:31:34)
[GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
与 Python 2 安装一样,在安装 Python 3 时同样包含 pip3。你有它! 您已准备好在 CentOS 8 服务器上开始使用 Python。