我目前正在为django-rest-framework做教程 我注意到它有些奇怪,我不确定它是否特定于Django或整个Python。请看下面的代码:
linenos = self.linenos and 'table' or False
它看起来像条件指令的缩短版本,但该操作的名称是什么?我找不到任何具体的信息。
lineos
是一个布尔变量。
答案 0 :(得分:3)
像
一样阅读linenos = (self.linenos and 'table') or False
如果'table'
为真,则返回self.linenos
,否则返回False
,原因是和/和评估的方式。
在现代Python中,我们将使用三元表达式编写
linenos = 'table' if self.linenos else False
答案 1 :(得分:0)
这是三条件流
如果self.linenos为true,则将表格分配给linenos,否则为False
我们也可以为多个条件链接此流程
这与大多数其他语言的var = condition1?12:3类似