python 3.10 已经在 10月 4 号发布了,这次更新了错误语法提示对 python 新手更加友好。好几个新的特性非常的有用,一起来看看吧。
更细致的错误语法提示
在调试代码的时候可以精确定位到错误语法的那行,而不是提示 SyntaxError 的行。
1 |
|
3.9 提示的是
1 |
|
3.10 提示的是
1 |
|
结构化模式匹配:match…case
相当于其他语言的 switch…case
1 |
|
关键字 match 后跟变量名。 如果匹配,则将执行 case 块内的语句, 没有匹配,则执行 case _ 块内的语句。
1 |
|
结果:
1 |
|
再来一个 tuple 类型的
1 |
|
结果:
1 |
|
可以使用 tuple 类型,当然也可以使用 list 类型,类似于:points = [(1, 3),(1, 2)]
新型联合运算符
以 X | Y 的形式引入了新的类型联合运算符。 |
1 |
|
结果:
1 |
|
也可以用作 isinstance():一个对象是否是一个已知的类型 和 issubclass():判断参数 class 是否是类型参数 classinfo 的子类 的第二个参数。
1 |
|
结果:
1 |
|
zip 的严格模式
函数 zip() 增加 strict 参数,如果设置 strict = True,而传输的参数的长度不相等将会抛出异常。
1 |
|
结果:
1 |
|
字典增加了 mapping 属性
dict.items()、dict.keys()、dict.values() 分别增加了 mapping 属性
1 |
|
总结
python 3.10 更新的最有用的就是错误提示了,再也不会看到提示一团迷糊,定位更加的精确,match…case 终于来了。