繁体   English   中英

Python为什么这个if语句返回True?

[英]Python why this if statement returns True?

我想知道为什么它返回True:

if False or True and True == True and (False == True or False == (not True)) or False and False and True:
    pass

它最后不接受“和假”部分为假吗? 不是所有带有“and”的语句都返回True吗?

从...开始:

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 TrueFalse

(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 FalseTrue

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM