在配置Python前,需确保系统包为最新状态,并安装编译Python或使用包管理器所需的依赖:
sudo yum update -y # 更新系统包
sudo yum groupinstall "Development Tools" -y # 安装编译工具(gcc、make等)
sudo yum install wget openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel sqlite-devel -y # 安装Python编译依赖
适用于需要快速安装默认版本(如CentOS 7的Python 3.6、CentOS 8的Python 3.9)的场景:
sudo yum install python3 -y # 安装Python 3
sudo yum install python3-pip -y # 安装pip(Python包管理工具)
验证安装:
python3 --version # 查看Python版本
pip3 --version # 查看pip版本
适用于需要特定Python版本(如3.9+)或优化性能的场景:
# 下载源码(以Python 3.9.7为例)
wget https://www.python.org/ftp/python/3.9.7/Python-3.9.7.tgz
tar xzf Python-3.9.7.tgz # 解压
cd Python-3.9.7 # 进入源码目录
# 配置并编译(--enable-optimizations启用性能优化)
./configure --enable-optimizations
make -j $(nproc) # 使用多线程加速编译(nproc为CPU核心数)
sudo make altinstall # 避免覆盖系统默认Python(如Python 2)
验证安装:
python3.9 --version # 查看编译安装的Python版本
适用于需要同时管理多个Python版本(如项目A用3.8、项目B用3.10)的场景:
# 安装pyenv及依赖
curl https://pyenv.run | bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init --path)"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc # 使配置生效
# 安装指定Python版本(如3.9.7)
pyenv install 3.9.7
# 设置全局默认版本(或局部版本:pyenv local 3.9.7)
pyenv global 3.9.7
# 验证当前Python版本
python --version # 应显示3.9.7
虚拟环境可避免不同项目的依赖冲突,推荐使用venv模块(Python 3内置):
# 创建虚拟环境(如myenv)
python3 -m venv myenv
# 激活虚拟环境
source myenv/bin/activate # 激活后命令行前会显示(myenv)
# 在虚拟环境中安装包(如requests)
pip install requests
# 退出虚拟环境
deactivate
pip是Python的包管理工具,用于安装、更新、卸载第三方库:
# 安装包(如numpy、pandas)
pip install numpy pandas
# 查看已安装包
pip list
# 更新包(如将numpy更新到最新版)
pip install --upgrade numpy
# 卸载包
pip uninstall numpy
若编译时报错“Could not build the ssl module”,需确保安装了openssl-devel依赖,并重新编译:
sudo yum install openssl-devel -y
cd Python-3.9.7 # 返回源码目录
./configure --enable-optimizations
make clean # 清理之前的编译文件
make -j $(nproc)
sudo make altinstall
若pip安装时出现网络错误,可使用国内镜像源(如清华源):
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests
CentOS 7默认使用Python 2,若需将Python 3设为默认,可使用alternatives命令(谨慎操作,避免影响系统工具):
sudo alternatives --install /usr/bin/python python /usr/bin/python3 1
sudo alternatives --config python # 选择python3作为默认版本
通过以上步骤,可在CentOS上完成Python的配置,满足不同场景的需求。根据实际需要选择安装方式,并注意虚拟环境的使用以隔离项目依赖。