发布亮点
Python 3.13 是 Python 编程语言的最新稳定版本,对语言、实现和标准库进行了一系列更改。最大的变化包括一个新的交互式解释器、对在自由线程模式下运行的实验性支持和即时编译器
错误消息继续改进,现在默认情况下回溯以彩色突出显示。locals()内置函数现在已定义更改返回映射的语义,并且类型参数现在支持默认值。
库更改包括删除已弃用的 API 和模块,以及对用户友好性和正确性的常规改进。几个旧标准库模块现已被删除,因为它们在 Python 3.11 中已被弃用。
由于官方下载慢,python3.13版本的安装包已为大家准备好。
百度网盘链接: https://pan.baidu.com/s/1iDQGzMpaTxZenpd1Pb73-A?pwd=baig 提取码: baig。
夸克网盘链接:打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。链接:https://pan.quark.cn/s/4e5897aa91ed
需要其他版本的安装包或者python办公自动化资料,请加文末微信获取
解释器改进
更好的交互式解释器:基于PyPy 项目代码的新交互式shell 多行编辑并保存历史记录 支持 REPL 特定的命令如help,exit、quit,而无需将它们作为函数调用 默认情况下启用彩色的提示和回溯 F1使用单独的命令历史记录进行交互式帮助浏览 使用它的历史记录浏览F2可以跳过输出以及 >>>和...提示。 使用“粘贴模式”F3可以更轻松地粘贴更大的代码块(F3再次按下可返回常规提示)。 改进的错误信息 解释器现在在终端中显示回溯时默认使用颜色。此功能可以 通过新的PYTHON_COLORS环境变量以及规范NO_COLOR和FORCE_COLOR环境变量。 一个常见的错误是编写与标准库模块同名的脚本。当这导致错误时,我们现在会显示更有用的错误消息:
$ python random.py
Traceback (most recent call last):
File "/home/me/random.py", line 1, in <module>
import random
File "/home/me/random.py", line 3, in <module>
print(random.randint(5))
^^^^^^^^^^^^^^
AttributeError: module 'random' has no attribute 'randint' (consider renaming '/home/me/random.py' since it has the same name as the standard library module named 'random' and the import system gives it precedence)
类似地,如果脚本与其尝试导入的第三方模块同名并且导致错误,我们还会显示更有用的错误消息:
$ python numpy.py
Traceback (most recent call last):
File "/home/me/numpy.py", line 1, in <module>
import numpy as np
File "/home/me/numpy.py", line 3, in <module>
np.array([1, 2, 3])
^^^^^^^^
AttributeError: module 'numpy' has no attribute 'array' (consider renaming '/home/me/numpy.py' if it has the same name as a third-party module you intended to import)
其他 自由线程的 CPython 实验性的即时 (JIT) 编译器 定义突变语义locals() 支持移动平台
Python 数据模型改进
__static_attributes__self.X存储类主体中任何函数所访问的属性的名称。 __firstlineno__记录类定义的第一行号。
标准库的重大改进
添加新的PythonFinalizationError异常,当操作在完成过程中被阻止时引发。 该argparse模块现在支持弃用的命令行选项、位置参数和子命令。 新功能base64.z85encode()支持对Z85 数据base64.z85decode() 进行编码和解码。 该copy模块现在具有一个copy.replace()功能,支持许多内置类型和定义该__replace__()方法的任何类。 新dbm.sqlite3模块现在是默认dbm后端。 该os模块有一套新功能, 可用于处理 Linux 的计时器通知文件描述符。 该random模块现在有一个命令行界面。
安全改进
ssl.create_default_context()设置了ssl.VERIFY_X509_PARTIAL_CHAIN和ssl.VERIFY_X509_STRICT作为默认旗标。
C API 改进
该Py_mod_gil插槽现在用于指示扩展模块支持在禁用GIL 的情况下运行。 已添加PyTime C API,提供对系统时钟的访问。 PyMutex是一个新的轻量级互斥锁,占用一个字节。 有一套新的函数 用于生成PEP 669监控 C API 中的事件。
新的类型标注特性
类型参数(typing.TypeVar、、typing.ParamSpec和typing.TypeVarTuple)现在支持默认值 新的warnings.deprecated()装饰器增加了在类型系统和运行时标记弃用的支持 typing.ReadOnly可用于将某项标记为 typing.TypedDict类型检查器的只读 typing.TypeIs提供更直观的类型缩小行为,作为替代typing.TypeGuard
平台支持
Apple 的 iOS 现在是官方支持的平台,第 3 级。 Android 现在是官方支持的平台,第 3 级。 wasm32-wasi现在支持二级平台。 wasm32-emscripten不再是官方支持的平台。
重要删除:
19个遗留的stdlib 模块已从标准库中删除 删除2to3工具和lib2to3模块(在 Python 3.11 中已弃用)。 删除该tkinter.tix模块(Python 3.6 中已弃用)。 删除该locale.resetlocale()功能。 删除typing.io和typing.re命名空间。 删除链接的classmethod描述符。
发布时间表变更
Python 年度发布周期已更新,将新版本的完整支持bugFix期限延长至两年,此更新的政策意味着:
Python 3.9–3.12 有一年半的全面支持,随后是三年半的安全修复。 Python 3.13 及更高版本有两年的全面支持,随后是三年的安全修复。