在CentOS上安装Python的秘诀
安装前务必更新系统软件包,确保后续步骤依赖的库版本兼容:
sudo yum update -y
安装开发工具链(编译Python源码必需)和核心依赖库(避免编译时报错):
sudo yum groupinstall "Development Tools" -y
sudo yum install openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel sqlite-devel wget -y
这些依赖是Python编译和运行的基础,缺失会导致安装失败或功能异常。
若不需要特定Python版本,优先使用YUM安装系统预编译的Python包:
sudo yum install python3 -y
sudo yum install epel-release -y
sudo yum install python3 -y
验证安装:
python3 --version # 查看Python版本
pip3 --version # 查看pip版本(用于后续安装第三方库)
此方式的优势是自动处理依赖,但无法灵活选择Python版本。
若需要特定Python版本(如3.12),或需要自定义编译选项(如优化性能),选择源码编译:
wget下载:wget https://www.python.org/ftp/python/3.12.1/Python-3.12.1.tgz
tar xzf Python-3.12.1.tgz
cd Python-3.12.1
--enable-optimizations开启编译优化(提升运行速度),-j参数指定CPU核心数加速编译(如-j 4表示用4个核心):./configure --prefix=/usr/local/python3.12 --enable-optimizations
make -j 4
altinstall而非install,防止替换系统自带的Python 2(CentOS 7)或Python 3(CentOS 8):sudo make altinstall
验证安装:
python3.12 --version # 查看指定版本Python
pip3.12 --version # 查看对应pip版本
源码编译的优势是可定制性强,但耗时较长,需手动处理依赖。
若需要同时使用多个Python版本(如3.8、3.9、3.12),推荐使用pyenv工具:
sudo yum install gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel xz-devel -y
curl https://pyenv.run | bash
~/.bashrc(或~/.bash_profile)文件末尾:export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
生效配置:source ~/.bashrc
pyenv install 3.9.9
设置全局默认版本(所有用户生效):pyenv global 3.9.9
验证当前版本:python --version # 显示pyenv管理的版本
pyenv的优势是多版本共存且切换方便,适合需要频繁切换版本的开发环境。
若从事数据科学、机器学习等工作,需要预装NumPy、Pandas等库,推荐使用Anaconda:
wget https://repo.anaconda.com/archive/Anaconda3-2025.02-Linux-x86_64.sh
bash Anaconda3-2025.02-Linux-x86_64.sh
按提示完成安装(接受许可协议、选择安装路径)。source ~/.bashrc
myenv的环境,指定Python版本为3.10:conda create -n myenv python=3.10
激活环境:conda activate myenv
验证Python版本:python --version
Anaconda的优势是预装科学计算库,且能轻松管理虚拟环境,适合数据科学项目。
无论使用哪种安装方式,虚拟环境都是隔离项目依赖、避免版本冲突的必备工具。推荐使用Python内置的venv模块(Python 3.3+):
python3 -m venv myenv # myenv为虚拟环境名称,可自定义
source myenv/bin/activate # 激活后,终端提示符会显示环境名称
deactivate
激活虚拟环境后,安装的第三方库会存储在该环境的lib目录下,不会影响系统全局Python环境。
yum),覆盖会导致系统故障。使用altinstall或虚拟环境解决。openssl-devel、zlib-devel)已安装,否则会出现编译错误(如Could not build the ssl module)。pip3 install --upgrade pip
通过以上步骤,你可以在CentOS上顺利安装Python,并根据需求选择合适的安装方式和工具,确保开发环境稳定、高效。