首先确认系统中已安装的Python版本,避免误操作影响现有服务:
python3 --version # 查看Python3版本(推荐)
python --version # 查看系统默认Python版本(可能为Python2,不推荐)
CentOS的默认包管理器(Yum/Dnf)可安全更新Python,但版本可能滞后于官方最新版。
sudo yum update # 更新系统软件包列表
sudo yum install python3 # 安装/更新Python3(保留旧版本)
sudo dnf update # 更新系统软件包列表
sudo dnf install python3 # 安装/更新Python3
更新后,通过python3 --version
验证版本。
若包管理器未提供所需版本(如Python 3.12+),可通过源码编译安装,不影响系统默认Python。
sudo yum groupinstall "Development Tools" # 安装编译工具链
sudo yum install openssl-devel bzip2-devel libffi-devel zlib-devel xz-devel # 安装Python依赖库
wget https://www.python.org/ftp/python/3.12.3/Python-3.12.3.tgz # 替换为最新版本链接
tar xzf Python-3.12.3.tgz
cd Python-3.12.3
./configure --enable-optimizations # 启用优化(提升性能)
make -j$(nproc) # 多核编译(加快进度)
sudo make altinstall # 安装到/usr/local/bin(避免覆盖系统Python)
python3.12 --version # 替换为新版本号
若需同时运行多个Python版本(如项目依赖不同版本),推荐使用pyenv
工具。
curl https://pyenv.run | bash # 下载并安装pyenv
~/.bashrc
(或~/.bash_profile
):export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
重新加载配置:source ~/.bashrc
。pyenv install --list # 查看可安装的最新版本
pyenv install 3.12.3 # 安装指定版本
pyenv global 3.12.3 # 设置为全局默认版本(不影响系统Python)
通过pyenv versions
查看已安装版本,pyenv local 3.11.6
可在当前目录切换版本。无论采用哪种方式,更新Python后需同步升级pip及项目依赖:
python3 -m pip install --upgrade pip # 升级pip到最新版
pip install --upgrade setuptools # 升级setuptools(避免安装错误)
/etc/profile
)。venv
或conda
创建隔离环境,避免全局更新影响项目:python3 -m venv myenv # 创建虚拟环境
source myenv/bin/activate # 激活环境
pip install -r requirements.txt # 安装项目依赖
通过上述方法,可根据需求选择合适的方式更新CentOS上的Python版本,兼顾安全性与灵活性。