CentOS 7/8默认自带Python 2(如python2.7),部分系统可能预装Python 3(如CentOS 8的python3.6)。运行以下命令确认:
python --version # 查看默认Python(通常为2.7)
python2 --version # 查看Python 2版本
python3 --version # 查看是否已安装Python 3
若已安装Python 3,可直接跳至验证pip步骤;若未安装,继续后续操作。
编译Python 3源码或通过YUM安装需提前安装开发工具和依赖库,避免编译错误:
# 安装开发工具组(含gcc、make等)
sudo yum groupinstall "Development Tools" -y
# 安装Python编译依赖(OpenSSL、Zlib、SQLite等)
sudo yum install -y openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel sqlite-devel wget
注:若使用CentOS 8,可将
yum替换为dnf(如sudo dnf install -y openssl-devel)。
YUM是CentOS默认的包管理工具,可快速安装稳定版本的Python 3(无需手动编译):
# 安装EPEL仓库(Extra Packages for Enterprise Linux),提供更多Python版本
sudo yum install epel-release -y
# 安装Python 3(以CentOS 7为例,安装python38;CentOS 8可直接用`sudo dnf install python3`)
sudo yum install python38 python38-pip -y
# 验证安装
python3.8 --version # 查看Python 3.8版本
pip3.8 --version # 查看pip版本
提示:若需其他版本(如Python 3.9),可通过
sudo yum search python3*查找可用版本,或使用源码编译安装。
若需要特定Python版本(如3.10+)或优化性能,可选择源码编译:
# 下载Python源码(以3.10.12为例,替换为所需版本)
wget https://www.python.org/ftp/python/3.10.12/Python-3.10.12.tgz
# 解压并进入目录
tar xzf Python-3.10.12.tgz
cd Python-3.10.12
# 配置编译选项(--enable-optimizations启用优化,提升运行速度)
./configure --prefix=/usr/local/python3 --enable-optimizations
# 编译并安装(altinstall避免覆盖系统默认python)
make -j$(nproc) # 使用多核加速编译(-j$(nproc)表示用所有CPU核心)
sudo make altinstall
# 创建软链接(方便全局调用)
sudo ln -s /usr/local/python3/bin/python3.10 /usr/bin/python3
sudo ln -s /usr/local/python3/bin/pip3.10 /usr/bin/pip3
# 验证安装
python3 --version # 应输出3.10.12
pip3 --version # 应输出对应pip版本
注意:
--enable-optimizations会增加编译时间,但能提升Python运行性能;altinstall不会覆盖系统默认的python命令(避免影响yum等工具)。
CentOS的yum工具依赖Python 2,若将/usr/bin/python指向Python 3,会导致yum无法运行。需修改yum配置:
# 备份原yum文件
sudo mv /usr/bin/yum /usr/bin/yum.bak
sudo mv /usr/libexec/urlgrabber-ext-down /usr/libexec/urlgrabber-ext-down.bak
# 修改yum解释器为Python 2
sudo sed -i '1s/python/python2/' /usr/bin/yum
sudo sed -i '1s/python/python2/' /usr/libexec/urlgrabber-ext-down
验证:运行
yum list,若无报错则表示配置成功。
安装完成后,建议升级pip到最新版本,并设置Python 3为默认版本:
# 升级pip3
python3 -m pip install --upgrade pip
# 设置Python 3为默认版本(可选,需谨慎使用)
# 使用alternatives工具管理多版本(适用于CentOS 7/8)
sudo alternatives --install /usr/bin/python python /usr/bin/python3 1
sudo alternatives --config python # 按提示选择Python 3
提示:设置默认版本前,请确认系统工具(如yum)是否依赖Python 2,避免影响系统稳定性。
最后,通过以下命令确认安装结果:
python3 --version # 应输出安装的Python 3版本(如3.10.12)
pip3 --version # 应输出pip版本及安装路径
若输出符合预期,则说明Python 3安装成功。
yum、systemd等工具依赖Python 2,删除会导致系统故障。python3 -m venv myenv创建虚拟环境,隔离项目依赖,避免污染全局环境。