详细内容见PEP-572:https://www.python.org/dev/peps/pep-0572/
这个东西让我想到了当年在c里写while((char=getchar())!=’\n’) 的时代。虽然这种写法在c里面可读性不太好,但是python使用了专有符号:=一定程度上解决了这个问题。
算是一个不错的语法糖,在一些特定情况下可以少些几行没什么用的变量读写代码。不过有了这个就想奢求更多啊,比如说可以写个lambda在里面什么的,类似于:
遇到问题没人解答?小编创建了一个Python学习交流QQ群:895817687 寻找有志同道合的小伙伴,
互帮互助,群里还有不错的视频学习教程和PDF电子书!
while data(lambda x:padding(x,32)):=f.read(32):
总结来说,个人认为python作为一个方便编写的语言,语法糖是多多益善的,用的好不好会不会影响可读性是一回事,有没有语法糖是另一回事。实用的语法糖上一个好像是3.6的f"",更新的太慢啦。顺带一提这东西也有很多不同意见,之前提案阶段有很多争议,把python之父都气跑了。