CentOS 安装 Python 指南:Yum、源码编译、Pyenv 与 Anaconda 怎么选

橘子海
橘子海
发布时间:2026-08-24 | 120人浏览过
原创

前言

CentOS 上安装 Python 不只是执行一条命令那么简单,选错方式可能会遇到版本受限、多环境冲突,甚至误伤系统自带解释器。下面按“快速可用、指定版本、多版本管理、数据科学环境”四类需求拆解方案,并把关键命令、验证方式和避坑点整理清楚,方便你在动手前先判断哪条路最适合自己。

CentOS 装 Python 看起来只是一次软件安装,实际常常牵涉版本选择、系统兼容和后续包管理。本文把 Yum、源码编译、Pyenv 和 Anaconda 四种常见方案拆开说明,并补上各自适用场景、关键命令和避坑点,方便你根据自己是否要新版本、多版本共存或数据科学环境,快速判断该走哪条路。

先判断:CentOS 上该选哪种安装方式

在动手之前,先明确自己的目标。不同安装方式解决的问题并不一样:

对比 Yum、源码编译、Pyenv 与 Anaconda 四种 CentOS 安装 Python 方案的适用场景与特点
CentOS 安装 Python 方案对比先按需求判断安装路径:是否追求省事、指定新版本、多版本共存,还是偏数据科学工作流。
  • 只想尽快装好并直接使用:优先选 Yum,步骤最少,适合基础开发和日常脚本。
  • 需要指定较新的 Python 版本:选源码编译,例如安装 3.11.2 这类仓库里未必提供的版本。
  • 同一台机器要切换多个 Python 版本:选 Pyenv,适合维护旧项目和新项目并存的环境。
  • 主要做数据分析、机器学习:选 Anaconda,能一次带上常用科学计算库。

如果没有特别需求,先从 Yum 开始通常最稳妥。后面几种方式更偏向版本控制、自定义编译和专业工作流。

用 Yum 安装 Python:最省事的入门方案

Yum 是 CentOS 自带的包管理工具,适合希望少折腾、快速可用的场景。它的优点是安装过程简单,系统集成度高,不需要手动处理源码编译流程。

安装步骤

  1. 先更新系统包,确保仓库和已安装软件处于较新状态:
sudo yum update -y
  1. 安装 Python 3:
sudo yum install python3 -y

这里安装的是仓库提供的 Python 3.x,具体版本取决于当前 CentOS 仓库,默认可能为 Python 3.6+。

  1. 验证是否安装成功:
python3 --version

如果终端输出类似 Python 3.6.8,说明安装已完成。

  1. 检查 pip 是否可用,并开始安装第三方包:
pip3 --version
pip3 install package_name
pip3 install numpy

什么情况下适合用 Yum

如果你的目标只是运行 Python 脚本、搭建基础开发环境,或者服务器上不要求特别新的 Python 版本,Yum 往往已经够用。它的短板也很明显:版本通常跟随系统仓库,更新节奏不如官方源码和版本管理工具灵活。

源码编译安装:适合指定版本和自定义优化

当你明确需要某个版本,比如 3.11.2,或者希望启用编译优化,源码安装会更合适。这种方式步骤更多,但版本掌控力也最高。

CentOS 源码编译安装 Python 的关键步骤与风险控制信息图
源码安装 Python 的关键流程源码安装的重点不只是下载和编译,更在于依赖准备、并行构建和使用 altinstall。

先安装编译依赖

源码编译前,需要把编译工具和依赖库装齐:

sudo yum groupinstall "Development Tools" -y # 安装gcc、make等工具
sudo yum install openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel sqlite-devel wget -y # 安装Python依赖库

下载并解压 Python 源码

以下示例安装 Python 3.11.2:

wget https://www.python.org/ftp/python/3.11.2/Python-3.11.2.tgz
tar xzf Python-3.11.2.tgz
cd Python-3.11.2

源码包可从 Python 官网选择对应版本后替换链接。

配置、编译与安装

进入源码目录后,按下面顺序执行:

./configure --enable-optimizations
make -j $(nproc)
sudo make altinstall
  • ./configure --enable-optimizations:开启编译优化,通常有助于提升运行性能。
  • make -j $(nproc):使用全部 CPU 核心并行编译,$(nproc) 会自动检测核心数。
  • sudo make altinstall:这是关键一步,它会生成类似 python3.11 的命令,而不是直接覆盖系统默认的 python。

验证安装结果

python3.11 --version

如果正确显示版本号,说明源码安装完成。

这套方式更适合对版本有明确要求的生产环境、编译测试环境,或需要在老系统上部署较新 Python 的情况。

用 Pyenv 管理多个 Python 版本

如果你经常在 2.7、3.6、3.11 等不同版本之间切换,Pyenv 往往比手动装多个 Python 更省心。它把安装、切换和隔离这几件事统一了起来。

安装依赖和 Pyenv

sudo yum install git gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel -y
curl https://pyenv.run | bash

配置环境变量

编辑 ~/.bashrc,加入以下内容:

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

保存后执行:

source ~/.bashrc

安装版本与切换版本

pyenv install 3.11.2
pyenv global 3.11.2
pyenv versions
  • pyenv install 3.11.2:安装指定版本。
  • pyenv global 3.11.2:设置全局默认版本。
  • pyenv versions:查看当前机器上已安装的版本和正在使用的版本。

这套方式特别适合开发者机器,尤其是需要维护多套项目环境时。相比直接编译多个版本,Pyenv 的日常操作成本更低。

Anaconda:更适合数据科学工作流

Anaconda 不只是装一个 Python,它更像一整套数据科学发行版。对于需要 NumPy、Pandas、TensorFlow 等库的用户来说,这种方式能少处理很多单独装包的环节。

安装步骤

  1. 访问 Anaconda 官网,下载 Linux 版本安装脚本,例如 Anaconda3-2025.02-Linux-x86_64.sh。
  2. 执行安装脚本:
bash Anaconda3-2025.02-Linux-x86_64.sh
  1. 按提示完成安装,包括接受许可协议和选择安装路径。
  2. 安装后重新加载环境:
source ~/.bashrc
  1. 验证是否安装成功:
conda list

如果终端能列出已安装包列表,说明 Anaconda 已正常工作。

它适合谁

如果你的重点是数据分析、科学计算或机器学习,Anaconda 会比手动逐个安装依赖更高效。但如果只是普通 Python 开发,它的体积和预装内容可能会显得偏重。

安装前后要注意的几个坑

1. 不要覆盖系统自带 Python

这一点最重要。CentOS 的系统工具可能依赖系统 Python:

CentOS 安装 Python 时需要避开的常见问题与建议操作信息图
CentOS 装 Python 的避坑提示无论选哪种方案,系统 Python、虚拟环境和依赖库检查,都是后续是否稳定可用的关键。
  • CentOS 7 常见依赖:Python 2.7
  • CentOS 8 常见依赖:Python 3.6

尤其在源码安装时,使用 altinstall 而不是 install,就是为了避免把系统默认命令替换掉,影响 yum 等系统工具正常运行。

2. 建议为项目单独建立虚拟环境

无论你用的是 Yum、源码、Pyenv 还是 Anaconda,都建议把项目依赖隔离开:

python3 -m venv myenv

这样可以避免不同项目之间的包版本互相冲突,也便于后续迁移和部署。

3. 编译报错时先检查依赖库

如果源码安装时报“缺少库”之类的错误,例如 openssl 相关问题,通常意味着开发包没有装全。这时需要补装对应依赖,例如 openssl-devel,再重新执行编译流程。

最后怎么选:按需求对号入座

如果你只想在 CentOS 上快速获得一个能用的 Python 环境,sudo yum install python3 -y 仍然是最直接的选择。需要新版或自定义编译参数,就走源码安装;需要多版本并存,优先用 Pyenv;如果主要是数据科学任务,Anaconda 更省时间。

真正需要避免的不是“装不上”,而是选错方案后把系统环境和项目环境混在一起。先确认你的版本需求、是否需要多版本切换,以及是否依赖科学计算生态,再决定安装路径,会比上来就执行命令更稳。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表