兰 亭 墨 苑
期货 · 量化 · AI · 终身学习
首页
归档
编辑文章
标题 *
URL 别名 *
内容 *
(支持 Markdown 格式)
你问的“Python 最新版本”,目前有两个口径:**已正式发布的稳定版是 Python 3.14**,而**正在开发中的下一个大版本是 Python 3.15**(已发布候选版)。下面把两者的核心功能分别说清楚。 --- ## 一、Python 3.14(已发布稳定版) 3.14 在 2025 年 10 月发布,官方玩梗称其为 “πthon”(圆周率 3.14 的谐音)。它的重点可以概括为**“并发能力跃升”**和**“语言表达力增强”**两条线[1][2]。 ### 1. 自由线程(No-GIL)正式落地 这是 3.14 最受关注的变化。Python 3.14 通过 **PEP 779** 正式支持“自由线程”构建:禁用 GIL 后,多线程代码可以真正在多核上并行执行,CPU 密集型任务的性能提升显著[2][3]。 不过它不是默认开启的,需要单独安装带 “t” 后缀的自由线程构建。代价是单线程性能通常略有下降(约 10%),内存占用也会增加。Guido 本人也提醒:去 GIL 主要服务于超大规模并发场景,普通开发者不必神化它[2]。 ### 2. 多解释器进入标准库 **PEP 734** 新增 `concurrent.interpreters` 模块,把原本只存在于 C API 的“多解释器”能力带给普通 Python 代码。每个解释器是进程内相互隔离的“逻辑进程”,默认不共享内存,既有进程级的隔离性,又有线程级的资源效率[4][5]。 ### 3. 模板字符串(t-strings) **PEP 750** 新增 t-string:语法与 f-string 几乎一样,但返回的不是 `str`,而是一个 `Template` 对象。它把静态文本和插值部分拆开暴露给你,方便安全地做 SQL 参数化、HTML 转义、国际化等场景[4][1]。 ### 4. Zstandard 压缩支持 **PEP 784** 新增 `compression.zstd` 模块,为高性能压缩格式 Zstandard 提供原生支持,并且 `tarfile`、`zipfile` 也直接支持读写 `.tar.zst` / `.zip` 中的 Zstd 归档[6][7]。 ### 5. 注解延迟求值 **PEP 649** 改变注解的求值时机:注解不再定义时立即求值,而是存起来、需要时才算。好处是启动更快、前向引用不再需要写字符串[1][5]。 ### 6. Asyncio 内省工具 新增 `python -m asyncio ps PID` 和 `pstree PID` 命令,可以查看运行中进程的 asyncio 任务列表和协程调用树,对调试卡死的异步程序很有用[6][7]。 ### 7. 其他值得注意的改进 - `except` 和 `except*` 可以省略括号(PEP 758)[1] - 禁止 `return`/`break`/`continue` 跳出 `finally` 块(PEP 765)[1] - macOS 和 Windows 官方二进制包含实验性 JIT;Android 首次发布官方二进制[1] ## 二、Python 3.15(开发中,已有候选版) 3.15 的 3.15.0rc1 在 2026 年 8 月发布,正式版预计不久后到来。它的重点方向是**启动速度、调试体验和类型系统**。 ### 1. 显式惰性导入(PEP 810) 允许显式声明“这个导入先别真正执行,等我用的时候再说”,从而加快启动速度、减少不必要的模块加载[8]。 ### 2. 新增内置类型 - **`frozendict`**(PEP 814):不可变的字典,适合做常量映射或需要哈希的场景[8] - **`sentinel`**(PEP 661):标准化的“哨兵”对象,用来表示“没有值”比用 `None` 更明确[8] ### 3. 专用性能分析包(PEP 799) 新增 `profiling.sampling` 包,提供**零开销采样分析**能力:可以挂载到运行中的进程而不影响其性能,支持 wall-clock、CPU、GIL 持有时间等多种模式[9][8]。 ### 4. 帧指针默认启用(PEP 831) CPython 默认用 `-fno-omit-frame-pointer` 编译,让系统级分析器、调试器和 eBPF 工具能更可靠地展开原生调用栈[9][8]。 ### 5. 其他变化 - JIT 编译器显著升级,x86-64 Linux 上比标准解释器快 8–9%[8] ## 三、一张表看清两代差异 | 维度 | Python 3.14 | Python 3.15 | |---|---|---| | 核心主题 | 并发跃升 + 语言表达力 | 启动速度 + 调试体验 | | 并发 | 自由线程正式支持、多解释器进标准库 | 延续 3.14 的自由线程成果,JIT 升级 | | 字符串 | t-strings(模板字符串) | — | | 类型 | 注解延迟求值 | TypeForm、TypedDict 额外项等 | | 调试 | asyncio 内省、零开销调试接口 | 专用采样分析包、帧指针默认开启 | | 启动 | — | 显式惰性导入 | | 新类型 | — | `frozendict`、`sentinel` | --- ## 四、给你的选择建议 如果你在**生产环境**用 Python,当前应锚定 **3.14**:它已经稳定,自由线程和多解释器为 CPU 密集型场景提供了新的可能,但第三方 C 扩展对自由线程的兼容性仍在推进中,采用前需要确认你的依赖链[2]。 如果你是**追求最新特性的开发者**,可以关注 **3.15 的候选版**:惰性导入对大型项目启动优化有实际价值,专用采样分析包对排查性能问题很友好,`frozendict` 和 `sentinel` 是语言层的实用补充[8]。 ## 参考来源 [1] 官方玩梗:Python 3.14(πthon)稳定版发布,正式支持自由线程和 Zstd 压缩 — https://m.ithome.com/html/887921.htm [2] Python新版本去GIL刷屏,Karpathy 点赞敢死队,Python 之父:冷静,别神话并发 — https://www.infoq.cn/article/efxy5ldeyr8drjjagllg#1 [3] Hi folks, I’m Amethyst, an engineer at Meta working on the Python Language Foundation team — https://hugo.lv/lv/TranslateProxy/https/raw.githubusercontent.com/amyreese/pycon/main/slides/python-313-is-a-big-deal.pdf#1#1 [4] Python 3.14 有什么新变化 — https://docs.python.org/zh-cn/3.14/whatsnew/3.14.html [5] What's new in Python 3.14 — https://raw.githubusercontent.com/python/cpython/36e4ffc1731fc939fde83a62ed547e81e94961af/Doc/whatsnew/3.14.rst#1 [6] What's new in Python 3.14 — https://docs.python.org/ja/3.16/whatsnew/3.14.html#dis [7] 파이썬 3.14의 새로운 기능에 대해 알아봅시다 — https://docs.python.org/ko/3.14/whatsnew/3.14.html#build-changes [8] Python Release Python 3.15.0rc1 — https://pythondotorg.ingress.us-east-2.psfhosted.computer/downloads/release/python-3150rc1/ [9] What’s new in Python 3.15 — https://docs.python.org/3.16/whatsnew/3.15.html
配图 (可多选)
选择新图片文件或拖拽到此处
标签
更新文章
删除文章