这是如何工作的?文档在哪里?
a = 0 or "" or None or 2
print(a)
a = 2 or "" or None or 0
print(a)
答案 0 :(得分:1)
将or
运算符视为函数:
or(x, y):
if x:
return x
else:
return y
然后a = 0 or ""
将与a = or(0, "")
相同。由于0
评估为False
,因此会返回""
。
现在,a = 0 or "" or None or 2
基本上是
a = or(or(or(0, ""), None) 2)
最里面的or
将返回""
,下一个将会意识到""
仍然评估为False并返回None
,最外层将最终返回2
}}