在 Linux 系统中安装 Python 的方法因发行版(如 Ubuntu/Debian、CentOS/RHEL)和需求(如默认版本、特定版本、多版本管理)而异。以下是最常用的安装方式,覆盖新手到进阶场景,确保你能快速安装并使用 Python。
一、检查系统是否已安装 Python
大多数 Linux 发行版预装了 Python(可能是 Python 2 或 Python 3),先通过以下命令确认当前版本:
bash
# 检查Python 3版本(推荐,Python 2已停止维护)
python3 --version
# 检查Python 2版本(仅作确认,不推荐使用)
python --version
- 若输出类似
Python 3.8.10,说明已安装 Python 3,可直接使用(若版本满足需求,无需重新安装)。 - 若提示 “command not found”,则需手动安装。
二、通过包管理器安装(推荐新手,简单高效)
1. Debian/Ubuntu 及衍生版(使用 apt)
bash
# 1. 更新软件源(确保获取最新版本)
sudo apt update
# 2. 安装Python 3及包管理工具pip(Python的依赖管理工具)
sudo apt install -y python3 python3-pip
# 3. 验证安装
python3 --version # 输出Python 3.x.x
pip3 --version # 输出pip 20.x.x(版本号可能不同)
- 若需要安装 Python 3 的开发工具(如编译 C 扩展模块),额外安装:
bash
sudo apt install -y python3-dev build-essential # 包含编译器和开发库
2. CentOS/RHEL 及衍生版(使用 yum/dnf)
-
CentOS 7 及以下:使用
yumbash
# 安装Python 3(CentOS 7默认无Python 3,需从EPEL源获取) sudo yum install -y epel-release # 先安装EPEL源(提供Python 3) sudo yum install -y python3 python3-pip # 验证 python3 --version pip3 --version -
CentOS 8+/Fedora:使用
dnf(yum的升级版)bash
sudo dnf install -y python3 python3-pip # 验证 python3 --version pip3 --version
三、安装特定版本的 Python(源码编译,适合进阶需求)
若需要安装官方仓库中没有的版本(如最新版 Python 3.12),或需自定义编译参数(如指定安装路径),可通过源码编译安装。
步骤(以 Python 3.12.0 为例,适用于所有 Linux 发行版)
-
安装编译依赖(确保编译过程不缺库):
bash
# Debian/Ubuntu sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget # CentOS/RHEL sudo yum install -y gcc openssl-devel bzip2-devel libffi-devel wget -
下载 Python 源码包(从Python 官网获取最新版本链接):
bash
wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz # 下载源码 tar -zxvf Python-3.12.0.tgz # 解压 cd Python-3.12.0 # 进入源码目录 -
配置编译参数(指定安装路径,启用优化):
bash
# --prefix:指定安装路径(默认/usr/local,避免覆盖系统自带Python) # --enable-optimizations:启用编译优化(提升运行速度,耗时略长) ./configure --prefix=/usr/local/python3.12 --enable-optimizations -
编译并安装:
bash
make -j $(nproc) # 多线程编译($(nproc)自动获取CPU核心数,加速编译) sudo make install # 安装到指定路径 -
设置软链接(可选,方便直接使用):避免每次输入完整路径
/usr/local/python3.12/bin/python3,创建软链接到系统 PATH:bash
sudo ln -s /usr/local/python3.12/bin/python3 /usr/bin/python3.12 sudo ln -s /usr/local/python3.12/bin/pip3 /usr/bin/pip3.12 -
验证安装:
bash
python3.12 --version # 输出Python 3.12.0 pip3.12 --version # 输出对应pip版本
四、多版本 Python 管理(适合开发者,使用 pyenv)
若需要在同一系统中切换多个 Python 版本(如 3.8、3.10、3.12),推荐使用 pyenv 工具,避免版本冲突。
步骤:
-
安装
pyenv:bash
# 克隆pyenv仓库到本地 git clone https://github.com/pyenv/pyenv.git ~/.pyenv # 配置环境变量(写入.bashrc,确保重启终端后生效) echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc echo 'eval "$(pyenv init -)"' >> ~/.bashrc # 生效配置 source ~/.bashrc -
安装指定 Python 版本:
bash
# 查看可安装的Python版本 pyenv install --list # 安装Python 3.12.0(会自动下载源码并编译,需提前安装编译依赖,见步骤三的1) pyenv install 3.12.0 # 安装Python 3.8.18(示例) pyenv install 3.8.18 -
切换 Python 版本:
bash
# 设置全局默认版本(所有终端生效) pyenv global 3.12.0 # 设置当前目录局部版本(仅当前项目生效) cd 你的项目目录 pyenv local 3.8.18 # 查看当前使用的版本 pyenv version # 输出当前版本 pyenv versions # 列出所有已安装版本(带*的是当前使用版本)
五、常见问题解决
-
pip安装权限问题(提示 “Permission denied”):避免使用sudo pip install(可能污染系统 Python 环境),推荐使用虚拟环境:bash
# 创建虚拟环境(Python 3.3+自带venv模块) python3 -m venv myenv # 激活虚拟环境(Linux/macOS) source myenv/bin/activate # 此时pip安装的包仅在虚拟环境中生效,无需sudo pip install requests # 退出虚拟环境 deactivate -
python命令指向 Python 2 而非 Python 3:部分系统中python默认指向 Python 2,可通过别名临时解决:bash
echo 'alias python=python3' >> ~/.bashrc # 写入.bashrc,永久生效 source ~/.bashrc # 生效后,python命令即指向python3 -
源码编译失败:通常是缺少依赖,根据错误提示安装对应的库(如 “missing zlib” 则安装
zlib1g-dev或zlib-devel)。
总结
- 新手首选:通过系统包管理器(
apt/dnf)安装,简单且自动处理依赖。 - 特定版本需求:源码编译安装,指定版本和路径。
- 多版本管理:使用
pyenv工具,灵活切换不同版本,适合开发场景。
安装后,建议立即创建虚拟环境管理项目依赖,避免系统 Python 环境被污染。
1万+

被折叠的 条评论
为什么被折叠?



