[英]Weird variable setting in python
我目前正在为django-rest-framework做教程。
我注意到其中有些怪异的东西,我不确定它是特定于Django还是整个Python。 请看下面的代码:
linenos = self.linenos and 'table' or False
它看起来像是条件指令的简化版本,但是该操作的名称是什么? 我找不到有关它的任何特定信息。
lineos
是一个布尔变量。
阅读像
linenos = (self.linenos and 'table') or False
如果self.linenos
为true,则返回'table'
,否则返回False
,这是由于and和or的求值方式。
在现代Python中,我们将使用三元表达式编写为
linenos = 'table' if self.linenos else False
是三条件流
如果self.linenos为true,则将表分配给linenos,否则为False
我们还可以针对多个条件链接此流程
就像其他大多数语言中的var = condition1?12:3一样
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.