Python 是世界上最受欢迎的编程语言之一。凭借其简单易学的语法,Python 是初学者和经验丰富的开发人员的热门选择。

与其他 Linux 发行版不同,CentOS 8 默认情况下并未安装 Python。

如您所知,Python 有两个版本。Python 2 的支持将于 2020 年结束。Python 3 是该语言的现在和未来。

默认情况下,RHEL/CentOS 8 没有系统范围的无版本 python 命令,以避免将用户锁定到特定版本的 Python。相反,它让用户可以选择安装、配置并运行特定 Python 版本。诸如 yum 之类的系统工具使用内部的 Python 二进制文件和库。

本指南将引导您在 CentOS 8 上安装 Python 3 和 Python 2。

在 CentOS 8 上安装 Python 3

要在 CentOS 8 上安装 Python 3,请以 root 或 sudo 用户在终端中运行以下命令:

终端
sudo dnf install python3

要验证安装,请输入以下命令检查 Python 版本:

终端
python3 --version

在撰写本文时,CentOS 仓库中提供的最新 Python 3 版本是“3.6.x”:

输出
Python 3.6.8

该命令同时会安装 pip。

要运行 Python,您需要显式输入 python3,而要运行 pip,则输入 pip3。

您应始终优先使用 yum 或 dnf 安装发行版提供的 Python 模块,因为它们经过支持与测试,可在 CentOS 8 上正常运行。仅在虚拟环境中使用 pip。Python 虚拟环境 允许您为特定项目在隔离位置安装 Python 模块,而非全局安装。这样,您就无需担心会影响其他 Python 项目。

Python 3 模块包的名称以“python3”为前缀。例如,要安装 paramiko 模块,您需要运行:

终端
sudo dnf install python3-paramiko

截至撰写本指南时,Python 的最新主要版本是 3.8。要安装它,您必须从源代码进行构建。

在 CentOS 8 上安装 Python 2

Python 2 软件包也包含在 CentOS 8 的默认仓库中。

要安装 Python 2,请输入以下命令:

终端
sudo dnf install python2

通过输入以下命令验证安装:

终端
python2 --version

输出应如下所示:

输出
Python 2.7.15

要执行 Python 2,请输入 python2;要运行 pip,请输入 pip2。

设置默认 Python 版本(无版本 Python 命令)

如果您的应用程序期望在系统路径中找到 python 命令,则需要创建无版本的 python 命令并设置默认版本。

要将 Python 3 设置为系统范围的无版本 python 命令,请使用 alternatives 实用程序:

终端
sudo alternatives --set python /usr/bin/python3

对于 Python 2,请输入:

终端
sudo alternatives --set python /usr/bin/python2

alternatives 命令会创建一个指向指定 python 版本的符号链接 python。

在终端中输入 python --version,您应该会看到默认的 Python 版本。

要更改默认版本,请使用上述命令之一。如果您想移除无版本的 python 命令,请输入:

终端
sudo alternatives --auto python