Python 3.9 正式发布!一图秒懂新特性
文章插图
文章插图
金磊 发自 凹非寺量子位 报道 | 公众号 QbitAIPython3.9 , 「千呼万唤始出来」 。 先来速看下此次发布版本的重点 。 新语法特性:
- PEP 584 , 为 dict 增加合并运算符 。
- PEP 585 , 标准多项集中的类型标注泛型 。
- PEP 614 , 放宽对装饰器的语法限制 。
- PEP 616 , 移除前缀和后缀的字符串方法 。
- PEP 593 , 灵活的函数和变量标注 。
- 【Python 3.9 正式发布!一图秒懂新特性】添加了 os.pidfd_open, 允许不带竞争和信号的进程管理 。
- PEP 573 , 从 C 扩展类型的方法快速访问模块状态 。
- PEP 617 , CPython 现在使用基于 PEG 的新解析器 。
- ……
- PEP 615 , IANA 时区数据库现在已包含于标准库的 zoneinfo 模块 。
- 图的拓扑排序实现现在已由新的 graphlib 模块提供 。
列出了他认为比较重要的八大新特性 , 广受网友好评 。
文章插图
字典合并与更新运算符此次「字典的合并与更新运算符」的新特性 , 是Python3.9的一大亮点 。
合并 (|) 与更新 (|=) 运算符已被加入内置的 dict 类 , 扩充了现有的 dict.update 和 {**d1, **d2} 字典合并方法 。
在Prasoon提供的图中也展示了对应的示例 , 如下图所示:
文章插图
新增用于移除前缀和后缀的字符串方法在Python的官方文档 , 以及Prasoon的图表中 , 也着重展示了新的用于「移除前缀和后缀的字符串」方法 。
str.removeprefix(prefix)和str.removesuffix(suffix)可以方便地从字符串中 , 移除不需要的前缀或后缀:
文章插图
标准多项集中的类型标注泛型在类型标注方面 , 现在可以使用内置的多项集类型(例如 list 和 dict)作为通用类型 , 而不必再从 typing 导入对应的大写形式类型名 。
文章插图
__import__特性修改__import__ 现在会引发 ImportError 而不是 ValueError 。
至于原因 , 在Python的官方文档中有相应的解释:后者曾经会在相对导入超出其最高层级包时发生 。
文章插图
新增的模块在新增模块方面 , zoneinfo模块为标准库引入了IANA 时区数据库 。
这是一个基于系统时区数据的实体 datetime.tzinfo 实现 , 示例如下图所示 。
文章插图
改进的模块除了新增的模块外 , Python3.9还对原有的一些模块进行了改进 。
Prasoon举出了他认为比较重要的一项——Random 。
名为random.Random.randbytes的方法 , 可以用于生成随机字节串 , 如下图所示 。
推荐阅读
- 搭载骁龙888处理器+120W超充 横屏性能旗舰iQOO 7正式发布
- 499元!魅族新耳机正式发布:这外观太熟悉了
- 下个月见!红米正式官宣:2999元起
- 3798元起!iQOO 7正式发布:120W快充+骁龙888
- “性能旗舰”iQOO 7正式发布:感受全感操控3798元起
- 实锤!荣耀V40将于1.8正式亮相,“前所未感”等你来看
- 虾米音乐,下个月正式停止服务
- 河北省首家“政策智通”计算器正式上线
- 计算机专业大一下学期,该选择学习Java还是Python
- 英国正式表态!倪光南的“提醒”很到位,美国的芯片垄断要梦碎?