这是脚本:
num = 3
if not (num == 2 and num == 3):
print('es 3')
代码打印是完全正常的,es 3
但是我意识到通常很难理解为什么,所以我将在这里分解代码:
我们应该检查的第一件事是num == 2
和num == 3
。显然num == 3
会返回True
并且num == 2
会返回False
因为num
被赋值了3
。
由于一个等式为假而另一个等式为真,and
运算符返回假,因为and
只有返回True
两个参数都为真。
所以(num == 2 and num == 3)
是假
然而not
将返回相反的布尔值,所以如果你键入not True
你会得到False
和not False
返回True
在这种情况下,您键入的内容等效于not False
因此它将返回True
,这意味着if
语句将执行并且 Python 将打印es 3
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句