🐍 Ubuntu 20.04 安装与使用 Python 3.12 指南(推荐 pyenv 管理)

Ubuntu 20.04 默认预安装 Python 3.8。如果你想使用 Python 3.12,可通过官方 PPA 安装或使用 pyenv 灵活管理多个版本。

本指南将推荐更安全、非侵入式的方式安装 Python 3.12,而不影响系统稳定性。


🔍 1. 查看当前系统 Python 版本

在终端查看系统默认 Python 版本(通常是 3.8):

python3 --version

🟡 Ubuntu 20.04 自带的 python3 不建议更改,建议使用「虚拟环境」或「pyenv」切换版本。


🧱 2. 方法一:通过 PPA 方式安装 Python 3.12

适合已有 Python 基础的用户,可快速获取新版本 Python。

(1)添加 Python PPA 仓库:

sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt update

(2)安装 Python 3.12 及其必要组件

sudo apt install python3.12 python3.12-venv python3.12-distutils

验证是否安装成功:

python3.12 --version

🧪 3. 使用 Python 3.12 创建虚拟环境(推荐)

使用 Linux 原生 venv,可避免影响系统默认 Python 版本。

python3.12 -m venv venv
source venv/bin/activate

此后运行的 python 版本即为 Python 3.12:

python --version

📝 注:虚拟环境中的 python、pip 是隔离的,退出后可执行:

deactivate

💡 4. 方法二:使用 pyenv 管理多个 Python 版本(推荐)

pyenv 是灵活、安全的多版本 Python 环境管理利器,推荐长期使用。

(1)安装构建依赖:

sudo apt update
sudo apt install -y make build-essential libssl-dev zlib1g-dev \
  libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
  libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev \
  liblzma-dev python3-openssl git

(2)安装 pyenv:

curl https://pyenv.run | bash

⚙️ 配置 shell 启动项(bash 用户):

# 添加到 ~/.bashrc
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv virtualenv-init -)"

保存后使配置生效:

source ~/.bashrc

(3)使用 pyenv 安装指定 Python 版本:

pyenv install 3.12.0
pyenv global 3.12.0  # 或 pyenv local 3.12.0

确认生效:

python --version

可结合 pyenv-virtualenv 使用:

pyenv virtualenv 3.12.0 myenv
pyenv activate myenv

🚫 不推荐:更改系统默认 python3

虽然可以使用 update-alternatives 修改默认 python3 指向,但此法风险较高:

  • apt、snap、gnome-shell 等系统组件依赖 Python 3.8
  • 修改默认链接可能导致系统工具失效

🔥 正确方式是:使用虚拟环境或 pyenv 不污染系统环境。


✅ 总结:哪种方式更适合你?

需求 推荐方法 特点说明
快速使用 Python 3.12 系统安装+venv 不影响系统环境
多版本并存 / 内切换 pyenv 灵活强大、开发部署首选
更改系统默认 python3 🚫 不推荐 容易引起系统不稳定,强烈回避

📘 常用命令速查

命令 用途
python3.12 -m venv venv 使用 3.12 创建虚拟环境
source venv/bin/activate 激活虚拟环境
deactivate 退出虚拟环境
pyenv install 3.12.0 使用 pyenv 安装 3.12
pyenv global 3.12.0 设置全局默认 python 版本
pyenv virtualenv 3.12.0 myenv 为 3.12 创建 pyenv 虚拟环境
pyenv activate myenv 激活 pyenv 虚拟环境
作者:freed  创建时间:2025-03-28 14:31
最后编辑:freed  更新时间:2025-03-28 14:32