[英]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 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
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.