结论是需使用ppa:deadsnakes/nightly而非默认ppa:deadsnakes/ppa,因后者仅提供稳定版(如3.11–3.13),而3.14、3.15a1等预览版仅在nightly源中提供;添加前应先卸载旧源、安装software-properties-common、导入gpg密钥,并确认ubuntu版本受支持。

直接说结论:用 deadsnakes 的 nightly PPA,不是默认的 ppa:deadsnakes/ppa —— 后者只提供稳定小版本(如 3.11、3.12、3.13),而预览版(alpha/beta/rc)必须换源。
怎么加 nightly PPA 而不是普通 deadsnakes
普通 ppa:deadsnakes/ppa 里压根没有 python3.14 或 python3.15a1 这类包。你要的是 ppa:deadsnakes/nightly,它专为每日构建和预发布版本服务。
- 先确保基础工具就位:
sudo apt install software-properties-common - 删掉旧 deadsnakes 源(如果加过):
sudo add-apt-repository --remove ppa:deadsnakes/ppa - 添加 nightly 源:
sudo add-apt-repository ppa:deadsnakes/nightly - 更新索引:
sudo apt update—— 这步失败?大概率是网络问题或 GPG 密钥未自动导入,可手动运行sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F23C5A6CF475977595C89F51BA6932366A755776(该密钥对应 nightly)
安装 python3.14 或 python3.15a1 时的常见错误
即使加对了 nightly,apt install python3.14 仍可能报 E: Unable to locate package python3.14 —— 不是命令错了,而是你当前 Ubuntu 版本不在 nightly 支持列表里。
- nightly 只为较新 LTS(如 22.04、24.04)和当前开发版(如 26.04)提供二进制包;Ubuntu 20.04 已被移除支持
- 运行
lsb_release -sc确认代号(如jammy),再查 Launchpad 页面 对应行是否打了勾 - 即便支持,预览版包名也可能带后缀,比如实际是
python3.14,但 nightly 构建中可能是python3.14-dev或python3.14-full;建议先搜:apt list python3.* | grep -i "14\|15"
装完之后 pip 不工作或报 ImportError: cannot import name 'main'
这是 nightly 包自带的 pip 和系统残留的旧 pip 配置冲突导致的,不是 Python 本身坏了。
- 别碰
update-alternatives,也别改/usr/bin/pip3符号链接 - 强制重装 pip:
python3.14 -m ensurepip --upgrade --default-pip - 验证:
python3.14 -m pip --version应显示类似pip 24.1.2 from /usr/lib/python3.14/site-packages/pip (python 3.14) - 如果仍报错,说明
ensurepip模块没初始化成功,此时需手动下载 get-pip.py:curl https://bootstrap.pypa.io/get-pip.py | python3.14
为什么不能用 pyenv 替代 nightly PPA?
可以,但目的不同:pyenv 编译安装适合需要调试 CPython 源码或启用特殊编译选项(如 --with-lto)的人;PPA nightly 是开箱即用的二进制包,省去 zlib/openssl/ncurses 等依赖排查,且能直接配合 apt remove 卸载。
真正容易被忽略的一点:nightly 构建不保证 ABI 兼容性 —— 比如用 python3.14a3 编译的 cryptography 扩展,在 python3.14b1 下大概率会段错误。所以预览版只建议跑纯 Python 脚本或 CI 测试,别往生产环境塞。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











