首頁  >  文章  >  後端開發  >  為什麼 Python 中 `1 in [1,0] == True` 的計算結果為 False?

為什麼 Python 中 `1 in [1,0] == True` 的計算結果為 False?

Linda Hamilton
Linda Hamilton原創
2024-10-31 21:14:02973瀏覽

Why Does `1 in [1,0] == True` Evaluate to False in Python?

比較運算子鏈:為什麼1 in [1,0] == True 計算結果為False

在Python 中,一個令人驚訝的結果可以將「in」成員資格測試的結果與True 進行比較時會出現:

<code class="python">1 in [1,0] == True  # Unexpectedly returns False</code>

要理解此行為,必須認識到Python 使用比較運算符連結。這表示表達式中的多個比較運算子將依序求值。在上述程式碼的情況下,表達式被解釋為:

<code class="python">(1 in [1,0]) == True</code>

進一步細分:

  1. 1 in [1,0] 計算結果為True (如1是True (如1是列表[1,0] 的成員。 [1,0] == True 背後的秘密
  2. 這個意外結果的原因在於Python 處理布林值和比較的方式。為布林值。 >因此,原始表達式簡化為:

,顯然其計算結果為False。 🎜>其他意義

此運算子連結行為也擴展到其他比較運算子。確保b 僅被評估一次。是從左到右,我們可以準確地預測結果並避免任何混亂。

以上是為什麼 Python 中 `1 in [1,0] == True` 的計算結果為 False?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn