在 Ubuntu Desktop 20.04 上安装 Python 3.12.7
在 Ubuntu Desktop 20.04 上安装 Python 3.12.7
需要特别注意:Ubuntu 20.04 的官方软件仓库默认提供的 Python 版本是 3.8。要安装更新的 Python 3.12.7,您需要从外部源或源代码进行安装。
以下是几种推荐的方法:
⚠️ 重要提示
- 不要替换系统 Python:Ubuntu 系统本身依赖于其默认的 Python 版本(3.8)。请不要试图替换
/usr/bin/python3这个系统链接。您应该将新版本安装到/usr/local或使用版本管理器,并通过python3.12命令来调用。 - 建议使用版本管理器:对于开发环境,强烈推荐使用
pyenv来管理多个 Python 版本,避免冲突。
方法一:使用 pyenv (强烈推荐)
pyenv 是管理多个 Python 版本的最佳工具,它允许您在用户级别安装和切换不同版本,不影响系统 Python。
-
安装依赖项:
sudo apt update sudo apt install -y make build-essential libssl-dev zlib1g-dev \ libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \ libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev -
安装 pyenv:先梯子成功
# 下载并安装 pyenv curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
太好了!您已经成功执行了 pyenv 的安装脚本。
从输出可以看出:
- 脚本已下载并执行。
pyenv的核心代码已克隆到~/.pyenv目录。- 必要的插件(
pyenv-doctor,pyenv-update,pyenv-virtualenv)也已安装成功。
✅ 下一步:配置 Shell 环境
安装脚本最后给出了一个重要警告:
WARNING: seems you still have not added ‘pyenv’ to the load path.
您需要将指定的环境变量和初始化命令添加到您的 Shell 配置文件中,这样每次打开终端时 pyenv 才能正常工作。
🔧 配置步骤
-
确定您的 Shell:
您使用的是bash(因为提示中提到了~/.bashrc)。可以通过echo $SHELL确认。 -
编辑
~/.bashrc文件:nano ~/.bashrc -
将以下内容添加到文件的 末尾:
# >>> pyenv setup >>> export PYENV_ROOT="$HOME/.pyenv" [[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init - bash)" eval "$(pyenv virtualenv-init -)" # <<< pyenv setup <<<export PYENV_ROOT=...:设置pyenv的安装根目录。export PATH=...:将pyenv的bin目录添加到PATH中,以便可以直接运行pyenv命令。eval "$(pyenv init - bash)":初始化pyenv,使其能拦截python、pip等命令。eval "$(pyenv virtualenv-init -)":初始化pyenv-virtualenv插件(用于创建虚拟环境)。
-
保存并退出
nano:- 按
Ctrl + O保存。 - 按
Enter确认文件名。 - 按
Ctrl + X退出。
- 按
-
重新加载
~/.bashrc或重启终端:source ~/.bashrc或者直接关闭并重新打开您的终端窗口。
✅ 验证安装
执行以下命令来验证 pyenv 是否已正确配置:
# 检查 pyenv 命令是否可用
pyenv --version
# 应该输出类似:pyenv 2.3.26 (或其他版本号)
# 查看可用的 Python 版本(列表很长,会滚动)
pyenv install --list
# 查看当前系统使用的 Python 版本
pyenv version
# 应该显示类似:system (set by /home/zjl/.pyenv/version) 或其他
✅ 安装 Python 3.12.7
现在您可以使用 pyenv 来安装您想要的 Python 版本了。
# 安装 Python 3.12.7
pyenv install 3.12.7
# 设置全局默认 Python 版本为 3.12.7
pyenv global 3.12.7
# 验证当前 Python 版本
python --version
# 应该输出:Python 3.12.7
# 验证 pip 版本
pip --version
📌 总结
您已经成功安装了 pyenv!只需完成最后一步配置:
- 编辑
~/.bashrc,添加pyenv的环境变量和初始化命令。 - 执行
source ~/.bashrc或重启终端。 - 运行
pyenv --version和python --version进行验证。
完成后,您就可以使用 pyenv install <version> 来安装任何您需要的 Python 版本了。
如果您不希望将 Python 3.12.7 设置为全局默认版本,而是想在特定情况下使用它,您可以选择以下几种方法来访问特定版本的 Python:
方法一:在当前 Shell 会话中临时使用指定版本
您可以在当前终端会话中临时更改 Python 版本,而不影响其他会话或用户。
# 在当前 shell 会话中使用 Python 3.12.7
pyenv shell 3.12.7
# 验证当前使用的 Python 版本
python --version
注意:pyenv shell 的设置仅对当前 shell 会话有效。关闭终端或切换到新的会话后,设置会被重置。
方法二:在项目目录内局部设置 Python 版本
如果您在一个项目的目录下工作,并且希望该项目使用特定版本的 Python,而系统或其他项目不受影响,可以这样做:
-
进入您的项目目录:
cd /path/to/your/project -
设置该项目使用的 Python 版本:
pyenv local 3.12.7这会在您的项目目录下创建一个名为
.python-version的文件,里面包含您设定的 Python 版本号。 -
验证设置是否成功:
python --version现在,在这个目录及其子目录中运行
python命令时,都会使用 Python 3.12.7。
方法三:直接调用指定版本的 Python 解释器
如果不想修改任何配置,也可以直接通过 pyenv 调用特定版本的 Python 解释器。
# 直接使用 pyenv 执行指定版本的 Python
~/.pyenv/versions/3.12.7/bin/python your_script.py
# 或者更简洁的方式
pyenv which python
# 将输出类似 ~/.pyenv/versions/3.12.7/bin/python 的路径
# 您可以直接使用该路径来执行 Python 脚本
方法四:使用虚拟环境(推荐)
利用 pyenv-virtualenv 插件创建虚拟环境是管理不同项目依赖关系的好方法。每个虚拟环境都可以关联不同的 Python 版本。
-
创建一个新的虚拟环境并指定 Python 版本:
pyenv virtualenv 3.12.7 my_project_env -
激活虚拟环境:
pyenv activate my_project_env -
现在在这个虚拟环境中,默认使用的就是 Python 3.12.7。您可以在其中安装所需的包而不影响系统的 Python 环境。
-
当不再需要使用该虚拟环境时,可以停用它:
pyenv deactivate
这种方法不仅可以让您灵活地选择 Python 版本,还能帮助隔离不同项目的依赖,避免版本冲突。
根据您的需求,选择最适合的方法来访问特定版本的 Python。对于开发项目来说,使用虚拟环境通常是最佳实践,因为它提供了良好的隔离性,有助于保持系统的整洁和稳定。
更多推荐



所有评论(0)