Python 3.15.0 alpha3 于近日发布,它清晰地展现了该语言未来的发展方向。
根据 https://www.python.org/downloads/release/python-3150a3/上的发布页面显示,该版本是 3.15 系列计划发布的七个 alpha 版本中的第三个,更多功能仍在开发中。
这是一个测试版本,并非正式发布到生产环境的版本。其目的是为了进行全面测试,了解可能出现的重大变更,并开始规划库支持。目前最突出的三点是:全新的性能分析功能、所有代码默认使用 UTF-8 编码,以及一系列改进的错误信息,使回溯信息更易于阅读。
让我们逐一了解这些内容,重点关注它们对实际项目的意义,而不仅仅是对变更日志的意义。
此版本性能改进的重点来自 PEP 799,它引入了新的profiling标准库模块和一个统计采样分析器。
Python 文档(https://docs.python.org/3.15/whatsnew/3.15.html)将其描述为一个高频采样分析器,可以附加到正在运行的进程并以极低的开销收集数据。
以前内置的工具,例如 `get_requests()`cProfile和profile`get_requests()`,都属于“跟踪”范畴。它们会包装每一个函数调用和返回值,这虽然提供了详细信息,但也增加了大量的开销,并可能影响性能。
可以看到,PEP 799 正朝着不同的模型迈进。
该提案中名为 tachyon 的新工具(参见https://peps.python.org/pep-0799/)会以极短的时间间隔中断进程,检查堆栈,并构建时间流逝的统计图像。
实际上,这意味着以下几点:
该接口位于新模块profiling.sampling中,任何人都能够轻松上手。
Python 3.15 的许多新特性仍在规划和编写中。目前已确定的主要新特性和变更包括:
https://www.python.org/downloads/release/python-3150a3/
作者:大雄
本篇文章为 @ 行动的大雄 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。
请扫描二维码,使用微信支付哦。