解開:為什麼'(1 in [1,0] == True)' 計算結果為False
表達式' Python中的(1 in [1,0] == True)' 最初看起來可能違反直覺,當人們期望它為True 時,其結果卻為False。為了解開這個謎團,我們必須深入研究 Python 求值過程的內部運作原理。
奇怪的是,Python 將此表達式解釋為一系列比較,而不是對布林值的直接檢查。表達式的真實結構顯示為:
此比較鏈的計算結果為False,因為第一個表達式'(1 in [1,0])' 傳回True,而第二個表達式傳回True , '([1,0] == True)' 計算結果為False。
這種比較鏈的現像也出現在其他表達式中,例如'a
無需對'b' 進行兩次冗餘求值。
理解 Python 求值行為的這一方面至關重要,以避免在處理複雜的情況時出現意外結果涉及比較的表達式。
以上是為什麼 Python 中 `(1 in [1,0] == True)` 的計算結果為 False?的詳細內容。更多資訊請關注PHP中文網其他相關文章!