Python 3.8正式发布,带来那些新特性?

2020-06-19 00:00:00 参数 文章 装饰 括号 看我
本文于微信公众号「Python之美」: mp.weixin.qq.com/s/Rpvt

今天Python3.8发布啦,我们一起看看这个版本都添加了那些新功能和特性。

PEP 572: Assignment Expressions

PEP 572的标题是赋值表达式,也叫做「命名表达式」,不过它现在被广泛的别名是「海象运算符」(The Walrus Operator)。因为:=很像海象「眼睛小,长着两枚长长的牙」这个特点^_^。

具体内容可以看我之前写的文章: PEP572: 海象运算符,在这里给大家展示个通过用PEP 572改写的一行实现斐波那契数列的例子:

In :  (lambda f: f(f, int(input('Input: ')), 1, , 1))(lambda f, t, i, a, b: print(f'fib({i}) = {b}') or t == i or f
   ...: (f, t, i + 1, b, a + b))
Input: 10
fib(1) = 1
fib(2) = 1
fib(3) = 2
fib(4) = 3
fib(5) = 5
fib(6) = 8
fib(7) = 13
fib(8) = 21
fib(9) = 34
fib(10) = 55
Out: True

相关文章