在 Ubuntu 24.04 上启动 Python 项目时,通常首先要考虑的是系统自带的 Python 是否足够,或者是否需要安装更新的解释器。Ubuntu 已经包含了 Python 3.12,但你可能仍然需要安装 pip、venv 模块,或者单独安装如 3.13 或 3.14 等版本的 Python。

本指南介绍了如何使用 Ubuntu 默认包、deadsnakes PPA 以及源码编译来在 Ubuntu 24.04 上安装 Python。它还展示了如何创建虚拟环境,以确保项目包不会影响系统 Python。

Ubuntu 24.04 默认 Python 版本

Ubuntu 24.04 随附的默认 Python 3 解释器是 Python 3.12。要检查你系统中的版本,请运行:

终端

python3 --version

输出

Python 3.12.3

随着 Ubuntu 发布安全更新,具体的补丁版本可能会发生变化,但默认解释器仍然是 Python 3.12。对于大多数系统脚本和许多开发任务来说,这个版本已经足够。关于其他检查版本的方法(包括在脚本内部),请参阅如何检查 Python 版本。

请勿替换 /usr/bin/python3 解释器。Ubuntu 工具(如 apt)、系统维护脚本和桌面实用程序都期望使用发行版提供的 Python 版本。如果你需要更新的 Python 版本,请将其与默认解释器一起安装,并使用其带版本号命令调用,例如 python3.13 或 python3.14。

快速参考

任务命令
检查 Ubuntu 的默认 Python 版本python3 --version
安装默认 Python、pip 和 venvsudo apt install python3 python3-pip python3-venv
添加纯 python 命令sudo apt install python-is-python3
使用默认 Python 创建虚拟环境python3 -m venv myproject
添加 deadsnakes PPAsudo add-apt-repository ppa:deadsnakes/ppa
从 PPA 安装 Python 3.13sudo apt install python3.13
从 PPA 安装 Python 3.14sudo apt install python3.14
安装 venv 模块sudo apt install python3.13-venv
创建虚拟环境python3.13 -m venv myproject
激活虚拟环境source myproject/bin/activate
停用虚拟环境deactivate
从源码编译./configure --enable-optimizations && make -j $(nproc)
安全地安装源码编译版本sudo make altinstall

安装默认 Python 包

如果你只需要 Ubuntu 24.04 自带的 Python 版本,请从 Ubuntu 软件源安装标准的 Python 工具。这将为你提供 pip3 和用于创建隔离项目环境的 venv 模块。

首先,更新包索引:

终端

sudo apt update

安装 Python、pip 和虚拟环境模块:

终端

sudo apt install python3 python3-pip python3-venv

当 Python 3 已经安装时,运行此命令是安全的。Apt 会保留现有的解释器并安装任何缺失的包。

验证已安装的命令:

终端

python3 --version
pip3 --version

在 Ubuntu 24.04 上,python3 指向 Python 3.12。pip3 命令为系统 Python 环境安装包,但 Ubuntu 会保护系统管理的 Python 包免受意外更改。对于项目依赖项,请使用虚拟环境而不是使用 pip3 全局安装包。

Ubuntu 24.04 不提供无版本号的 python 命令。直接调用 python 的脚本和构建工具会失败,直到你安装 python-is-python3,该包将 /usr/bin/python 符号链接到默认 Python 3 解释器。该包仅更改命令名称,而不改变运行的版本。

使用默认 Python 创建虚拟环境:

终端

python3 -m venv myproject

激活它:

终端

source myproject/bin/activate

在环境中,python 和 pip 指向隔离的项目环境:

终端

python --version
python -m pip --version

完成项目工作后,停用环境:

终端

deactivate

从 Deadsnakes PPA 安装 Python

第三方 deadsnakes PPA 提供了为 Ubuntu 打包的更新版 Python。当你需要与 Ubuntu 默认的 Python 3.12 一起使用 Python 3.13、Python 3.14 或其他受支持的版本时,请使用此方法。

警告:deadsnakes PPA 不是官方 Ubuntu 存储库,其维护者不保证及时的安全更新。除非你确实需要另一个 Python 版本,否则请优先使用 Ubuntu 包用于生产或安全关键系统。

PPA 不会替换系统 Python。它会安装带版本号命令,如 python3.13 和 python3.14,这是 Ubuntu 上更安全的方法。

  1. 安装先决条件并添加 PPA:

    终端
    sudo apt update
    sudo apt install software-properties-common
    sudo add-apt-repository ppa:deadsnakes/ppa

    当提示确认时,按 Enter。

  2. 安装 Python 3.13:

    终端
    sudo apt update
    sudo apt install python3.13

    如果要安装 Python 3.14,请将 python3.13 替换为 python3.14:

    终端
    sudo apt install python3.14
  3. 验证安装:

    终端
    python3.13 --version

    该命令打印已安装的 Python 3.13 补丁版本。你也可以确认二进制文件位置:

    终端
    which python3.13
  4. 为同一解释器安装 venv 模块:

    终端
    sudo apt install python3.13-venv

    如果你安装了 Python 3.14,请使用:

    终端
    sudo apt install python3.14-venv
  5. 创建虚拟环境并在其中使用 pip:

    终端
    python3.13 -m venv myproject
    source myproject/bin/activate
    python -m pip install --upgrade pip

信息:系统默认的 python3 仍然指向 Python 3.12。要使用新安装的版本,请显式运行 python3.13 或 python3.14。

在 Ubuntu 24.04 上更新 Python

运行 sudo apt upgrade 不会将 Ubuntu 升级到更新的 Python 次要版本。Ubuntu 24.04 在整个发布周期内保持在 Python 3.12 系列,apt 仅在其内部提供 3.12.x 的安全和错误修复更新:

终端

sudo apt update && sudo apt upgrade

当项目需要 Python 3.13 或 3.14 时,你并不是在更新系统解释器,而是在其旁边安装第二个。使用 deadsnakes PPA 获取打包的构建版本,或者当你需要特定的上游补丁版本时从源码编译。两者都会将 /usr/bin/python3 保留在 Python 3.12,这正是保持 apt 和桌面工具正常工作的原因。

按项目而非系统范围固定版本。使用你想要的解释器创建虚拟环境,其中的每个命令都使用该版本。

从源码安装 Python

从源码编译 Python 允许你安装任何版本并自定义构建选项。但是,你将无法通过 apt 包管理器管理安装。

以下步骤展示了如何编译 Python 3.14.7。如果你正在安装不同的版本,请在下面的命令中替换版本号。

  1. 安装构建 Python 所需的库和依赖项:

    终端
    sudo apt update
    sudo apt install build-essential zlib1g-dev libncurses-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev liblzma-dev
  2. 使用 wget 从 Python 下载页面下载源代码:

    终端
    wget https://www.python.org/ftp/python/3.14.7/Python-3.14.7.tgz
  3. 解压归档文件:

    终端
    tar -xf Python-3.14.7.tgz
  4. 进入源代码目录并运行 configure 脚本:

    终端
    cd Python-3.14.7./configure --enable-optimizations

    --enable-optimizations 标志运行基于轮廓的优化测试,这会使构建变慢,但会产生更快的 Python 二进制文件。

  5. 开始构建过程:

    终端
    make -j $(nproc)

    -j $(nproc) 选项使用所有可用的 CPU 核心进行更快的构建。

  6. 使用 altinstall 安装 Python 二进制文件。使用默认的 /usr/local 前缀时,make install 会创建 /usr/local/bin/python3,这可能会在 shell 的 PATH 中覆盖 Ubuntu 的 /usr/bin/python3。使用 altinstall 可以避免更改作为 python3 运行的解释器:

    sudo make altinstall
  7. 验证安装:

    python3.14 --version
    output
    Python 3.14.7

设置虚拟环境

安装新版本 Python 后,为项目创建虚拟环境以隔离依赖项:

python3.13 -m venv myproject

激活虚拟环境:

source myproject/bin/activate

您的 shell 提示符将更改以显示环境名称。在虚拟环境中,python 和 pip 指向用于创建它的版本。

对于源码构建的 Python 3.14 安装,请使用带版本的命令:

python3.14 -m venv myproject

要停用虚拟环境:

deactivate

有关更多详细信息,请参阅我们关于如何创建 Python 虚拟环境的指南。

可选:卸载 PPA 版本

要移除 PPA 版本:

sudo apt remove python3.13 python3.13-venv

要移除 PPA 本身:

sudo add-apt-repository --remove ppa:deadsnakes/ppa

故障排除

安装后 python3 已存在
这是预期的。Ubuntu 24.04 默认包含 Python 3.12,因此安装默认包可能只会添加缺失的工具,例如 pip3 或 venv。

pip 报告外部管理的环境
Ubuntu 保护系统管理的 Python 包。使用 python3 -m venv myproject 创建虚拟环境,激活它,并在环境中使用 python -m pip install package-name 安装包。

没有名为 venv 的模块
安装匹配的 venv 包。对于 Ubuntu 的默认 Python,运行 sudo apt install python3-venv。对于来自 PPA 的 Python 3.13,运行 sudo apt install python3.13-venv。

E: 无法定位包 python
Ubuntu 24.04 不发行名为 python 的包。Python 2 已从归档中移除,解释器打包为 python3。请改用 sudo apt install python3。如果脚本或构建工具调用纯 python 命令,请安装 python-is-python3。

无法定位包 python3.13 或 python3.14
添加 deadsnakes PPA 后运行 sudo apt update。如果包仍然不可用,请检查 PPA 是否支持您的 Ubuntu 发行版和 CPU 架构。

python3 仍显示 Python 3.12
python3 命令应继续使用 Ubuntu 的默认解释器。使用其带版本的命令运行新版本,例如 python3.13 或 python3.14。

常见问题解答

我应该使用 PPA 还是从源码构建?
如果 Python 3.12 足够,请使用 Ubuntu 包。当您需要更新的打包解释器(如 Python 3.13 或 3.14)时,请使用 deadsnakes PPA。仅在您需要特定的上游补丁版本或自定义构建配置时才从源码构建。

安装新版本 Python 会破坏我的系统吗?
不会。两种方法都会将新版本与系统 Python 3.12 一起安装。系统 python3 命令不受影响。您使用 python3.13 或 python3.14 访问新版本。

我如何让新版本 Python 成为默认版本?
您可以使用 update-alternatives 进行配置,但不推荐。许多 Ubuntu 系统工具依赖于默认的 python3 是随操作系统发行的版本。请使用虚拟环境。

我如何为新 Python 版本安装 pip?
推荐的方法是使用虚拟环境。安装 python3.13-venv,创建 venv,激活它,并在环境中使用 python -m pip。

install 和 altinstall 在从源码构建时有什么区别?
altinstall 安装带版本的二进制文件(如 python3.14),而不会创建不带版本的 python3 命令。使用默认前缀时,install 可能会创建 /usr/local/bin/python3,这可能会在 shell 的 PATH 中覆盖 Ubuntu 的 /usr/bin/python3 命令。

Ubuntu 24.04 默认包含 pip 吗?
Ubuntu 24.04 包含 Python 3.12,但基础安装中不包含 pip。使用 sudo apt install python3-pip 安装它。对于更新的 Python 版本,请在虚拟环境中使用 python3.13 -m pip。