python赋值语句规则菜鸟教程,python给函数赋值
Python的赋值表达式最初在英文中被命名为Assignment Expressions,也因为太像海象而被称为walrus operator。今天,小千将向你介绍三种常见赋值语句的写作。让我们来看看他们,以防你将来不认识他们。
Python的版本发展很快,现在最新版本是Pyhton 3.9。即便如此,很多人还停留在3.6或3.7,甚至3.8还没用过。Python 3.8的很多特性还没来得及理解就已经成为旧知识了,比如今天要讨论的walrus算子。
1.第一种用法:if/else可能有朋友是第一次接触这个新特性,那么这个walrus算子有什么用呢?Golang中的条件语句可以在if中获得变量后直接判断变量,可以为你节省一行代码。
在Python 3.8之前,Python必须这样写。
但是有了海象算子,你就可以和Golang一样了。(如果你没学过Golang,这里请注意:=在Golang里叫做短变量声明,意思是声明和初始化。它和Python中的:=不是一个概念。)
2、第二种用法:while在使用walrus运算符之前,使用while循环读取文件时,可能会这样写。
但是有了海象操作器,你可以做到这一点。
取代了之前的无限while循环编写,更加神奇。例如,要实现一个要求命令行交互输入密码并检查密码的代码,您可以这样写。
有了海象算子,这样写就比较舒服了。
3.第三种用法:演绎公式在这个系列的几乎每一篇文章中都可以看到,这一篇依然如此。在编码的过程中,我喜欢使用派生,在简单的应用场景中简洁高效。在下面的代码中,我将使用列表派生来获取所有肥胖成员的bmi指数。
输出如下
可以看到,只有三个成员,但是get_bmi函数执行了四次。原因是判断的时候执行了三次,构造新列表的时候又执行了一次。如果所有成员都肥胖,最后会执行6次,在大数据量下浪费性能,所以对于这种结构,我一般用传统的for循环If判断。
有了walrus操作器,在这种情况下您不必妥协。
从最终的输出可以看出,它只执行了三次。
这里只介绍列表派生,但也适用于字典派生和集合派生。不再示威。Walrus操作符是一个新颖的特性,很多人认为它会破坏代码的可读性。新东西出来确实会出现这种情况,但我相信,经过时间的沉淀,当越来越多的人使用它,享受它带来的便利时,这种争议会慢慢消失在历史的长河中。
本文来自前锋教育,转载请注明出处。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。