Python 3.10 中的新增功能(摘要)

发布周期一年了,前几天还以为3.9刚出来的时候,3.10的a2已经出来了(汗)。写到这里,下一个α版本会和正式版同时发布,所以是按计划进行的,只是节奏有点快(^^;(←这是我刚开始的时候的评论)写这篇文章。)

不过,我很好奇下一个版本会出现什么,所以我想提取和总结一下。3.9 的下一个版本是 3.10 而不是 4.0(笑)。首先是通常的开发路线图(PEP-619)。

  • 3.10.0 开发开始:2020-05-18(完成)
  • 3.10.0 alpha 1:2020-10-05(完成)
  • 3.10.0 alpha 2:2020-11-02-> 2020-11-04(已完成)
  • 3.10.0 alpha 3:2020-12-07(完成)
  • 3.10.0 alpha 4:2021-01-04(已完成)
  • 3.10.0 alpha 5:2021-02-03(已完成)
  • 3.10.0 alpha 6:2021-03-01(完成)
  • 3.10.0 alpha 7:2021-04-06(完成)
  • 3.10.0 beta 1:2021-05-03(完成)
  • 3.10.0 beta 2:2021-05-31(完成)
  • 3.10.0 beta 3:2021-06-17(完成)
  • 3.10.0 beta 4:2021-07-10(完成)
  • 3.10.0 候选1:2021-08-03(已完成)
  • 3.10.0候选2:2021-09-07(已完成)
  • 3.10.0 决赛:2021-10-04(完成!)

按照计划,3.10 于 2021 年 10 月发布,仅比 3.9 晚了一年。

更改日志

2021-10-04

  • 基于 2021-10-04 发布的 3.10.0 修订。
    • 添加了“PEP-626:显示用于调试等的准确行号”。
    • 描述已更改,因为“PEP-563:注释的惰性评估成为默认值”的引入已被推迟。

2021-05-04

  • 基于 2021-05-03 发布的 3.10 beta 1 进行了修订。
    • 添加了关于结构模式匹配的内容
    • 添加了需要 OpenSSL 1.1.1 或更高版本的情况

2021-01-24

  • 基于 2021-01-04 发布的 3.10 alpha 4 进行了修订。
    • 在弃用时间表中添加了 PEP-623(与 Unicode 内部实现相关)
    • 我写了一篇关于“PEP-612:参数规范变量”的单独文章,并添加了一个链接。

2020-11-07

  • 第一个版本。a2 于 2020 年 10 月 4 日发布,但我是根据新内容编写的。

精选新功能

PEP 634:结构模式匹配

我认为这是 Python 3.10 的主要功能,但模式匹配功能即将加入 Python。这是 Rust 和 Scala 中熟悉的特性,我认为它将来会在 Python 中大量使用,因为 Python 没有 switch 语句。

→ 另一篇文章:Python 3.10 新特性(二)——Python 中的 match 语句

PSP 626:显示准确的行号以进行调试等。

发生运行时错误时会显示堆栈跟踪,其中的行号是非常重要的调试信息。在大多数情况下,以前的实现显示正确的行号,但在某些情况下不是。正是这个 PEP 修复了它。

之前,运行字节码对应的源代码行号f_lineno保存在框架对象的属性中。除此之外co_lines(),还增加了一个调用方法,使字节码和行号的关系更加清晰。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值