当地时间 10 月 9 日,Python 3.15.0 稳定版正式发布。这个版本由 1,012 位贡献者完成 5,643 次代码提交,相比 Python 3.14 带来了大量新特性与性能优化。
对开发者来说,最直观的变化藏在解释器层面。这次更新一口气落地了多个 PEP,从编码、导入到字典类型,几乎覆盖了日常写代码的每个环节。
![]()
默认 UTF-8,导入可以延迟
PEP 686 让 Python 默认采用 UTF-8 编码,这意味着跨平台处理文本时的编码坑少了一个。PEP 810 支持显式延迟导入,直接缩短启动耗时——对命令行工具和大型项目来说,这个改动值得关注。
解释器层面还有几项新增能力:
- PEP 661:新增内置哨兵类型
- PEP 798:推导式支持解包操作
- PEP 814:新增不可变字典内置类型 frozendict
- PEP 829:支持包级别的启动配置文件
错误提示信息也做了优化,终端输出与报错信息支持更多彩色高亮显示。
JIT 提速,性能分析有了专用工具
实验性即时编译器(JIT Compiler)迎来重大升级。在 x86-64 Linux 平台上,相比标准解释器,几何平均性能提升了 7% 至 8%;在 AArch64 macOS 平台上,相比尾调用解释器,运行速度加快了 11% 至 12%。
标准库方面,PEP 799 新增专用的性能分析工具包,用于统一管理 Python 性能分析工具,同时引入 Tachyon 高频统计抽样性能分析器。类型系统也补了三块:PEP 728 支持为额外键值指定类型的 TypedDict,PEP 747 支持使用 TypeForm 注解类型本身,PEP 800 引入互斥基类机制。
自由线程与官方包变更
C API 接口同样有动作。PEP 782 新增用于创建 Python 字节对象的 PyBytesWriter C API;PEP 788 在 C API 中增加防止对象过早终结化的保护机制;PEP 803、820、793 为无全局解释器锁的自由线程构建提供稳定应用程序二进制接口及相关 C API。
构建配置上,PEP 831 默认启用栈帧指针,增强系统级可观测性与性能诊断能力。
官方发布包也有两处默认变更:Windows 64 位官方预编译二进制包现已默认采用尾调用解释器;macOS 官方预编译二进制包现已默认安装自由线程支持。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.