Python 为什么这个 if 语句 returns 为真?
Python why this if statement returns True?
我想知道为什么 return是真的:
if False or True and True == True and (False == True or False == (not True)) or False and False and True:
pass
最后不接受"and False"部分为False吗?
不是所有带有“和”的语句 return 都是正确的吗?
开始于:
False or True and True == True and (False == True or False == (not True)) or False and False and True
先解决括号:
(False == True or False == (not True))
先解决括号 - not True
是 False
:
(False == True or False == False)
下一个操作顺序:==
:
((False == True) or (False == False))
导致:
((False) or (True))
下一个操作顺序:or
:
(True)
现在我们有:
False or True and True == True and (True) or False and False and True
下一个操作顺序:==
:
False or True and (True == True) and True or False and False and True
导致:
False or True and (True) and True or False and False and True
下一个操作顺序:and
:
False or ((True and True) and True) or ((False and False) and True)
导致:
False or ((True) and True) or ((False) and True)
然后:
False or (True) or (False)
现在 or
运算符:
((False or True) or False)
然后:
((True) or False)
结果是 True
因为 True or False
是 True
.
我想知道为什么 return是真的:
if False or True and True == True and (False == True or False == (not True)) or False and False and True:
pass
最后不接受"and False"部分为False吗? 不是所有带有“和”的语句 return 都是正确的吗?
开始于:
False or True and True == True and (False == True or False == (not True)) or False and False and True
先解决括号:
(False == True or False == (not True))
先解决括号 - not True
是 False
:
(False == True or False == False)
下一个操作顺序:==
:
((False == True) or (False == False))
导致:
((False) or (True))
下一个操作顺序:or
:
(True)
现在我们有:
False or True and True == True and (True) or False and False and True
下一个操作顺序:==
:
False or True and (True == True) and True or False and False and True
导致:
False or True and (True) and True or False and False and True
下一个操作顺序:and
:
False or ((True and True) and True) or ((False and False) and True)
导致:
False or ((True) and True) or ((False) and True)
然后:
False or (True) or (False)
现在 or
运算符:
((False or True) or False)
然后:
((True) or False)
结果是 True
因为 True or False
是 True
.