近日,Python 3.9.0 final 正式发布,包含许多新功能和优化,禁止在Windows 7上安装,且默认提供64位安装程序。
Python 3.9版本的主要新功能和更改主要包括:
PEP 573.C 扩展方法的模块状态访问
PEP 584.联合运营商的dict
PEP 585.在标准集合中键入提示泛型
PEP 593.灵活的函数功能和变量注释
PEP 602.Python 采用稳定的年度发布方式
PEP 614.放宽对装饰器的语法限制
PEP 615.支持标准库中的IANA时区数据库
PEP 616.删除用于前缀和后缀的字符串方法
PEP 617.用于CPython的新PEG解析器
BPO 38379.垃圾回收程序不会阻止复活的对象;
BPO 38692.添加了os.pidfd_open,它允许在没有竞赛(races)和信号(signals)的情况下进行进程管理;
BPO 39926.Unicode支持已更新至版本13.0.0;
BPO 1635741.在同一进程中多次初始化Python时,它不再泄漏内存;
现在使用PEP 590 vectorcall加快了许多Python内置函数(范围,元组,集合,frozenset,列表,字典)的速度;
现在,许多Python模块(_abc,audioop,_bz2._codecs,_contextvars,_crypt,_functools,_json,_locale,运算符,资源,时间,_weakref)都使用PEP 489定义的多阶段初始化;
现在,许多标准库模块(audioop,ast,grp,_hashlib,pwd,_posixsubprocess,random,select,struct,termios,zlib)都使用PEP 384定义的稳定ABI 。
此外,正式版发布之后,将会在一年之内会获得完整支持,5 年之内会有安全更新。