Python 今天发布了重大更新版本 v3.8,下一个版本 3.9 已在开发之中。Python 每一年半时间发布一个重大更新版本,今年早些时候开发者谈论加快发布节奏,比如采用一年一次大更新,但决定尚未作出。 Python 3.8.0 主要更新内容:
PEP 572, 赋值表达式(NAME := expr)
PEP 570, 仅限位置的参数,新增了一个函数形参语法 / 用来指明某些函数形参必须使用仅限位置而非关键字参数的形式
PEP 587, Python 初始化配置(改进嵌入)
PEP 590, Vectorcall:CPython 的快速调用协议
PEP 578, 运行时审核挂钩
PEP 574, 带外数据的 Pickle 协议 5
Typing 相关:PEP 591,PEP 586,PEP 589
并行文件系统缓存,用于编译的字节码
调试版本与发行版本共享 ABI
f 字符串支持一个方便的 = 说明符进行调试
continue 现在在 finally: 块中
在 Windows 上,默认的异步事件循环现在是 ProactorEventLoop
在 macOS 上,默认情况下现在在多处理中使用 spawn start 方法
现在,多处理(multiprocessing)可以使用共享内存段
typed_ast 合并回 CPython
LOAD_GLOBAL 现在快了 40%
pickle 现在默认使用协议 4,提高了性能
完整更新说明: https://www.python.org/downloads/release/python-380/