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

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

Patricia Arquette
Patricia Arquette原創
2024-11-01 04:23:02934瀏覽

Why does `(1 in [1,0] == True)` evaluate to `False` in Python?

錯誤計算(1 in [1,0] == True)

與典型的程式語言不同,Python 使用比較來計算表達式運算符鏈。在表達式 (1 in [1,0] == True) 中,操作未如預期解析。

表達式實際上被​​解釋為:

(1 in [1, 0]) and ([1, 0] == True)

此評估失敗into:

  • (1 in [1, 0]):此計算結果為True,因為列表[1, 0] 中存在1。
  • ([1, 0] == True):計算結果為 False,因為 [1, 0] 是一個列表,而不是布林值。

整體表達式,因此,計算結果為:

True and False = False

這個意外結果凸顯了 Python 與其他語言相比表達式計算的差異。為避免混淆,請使用括號指定所需的計算順序:

(1 in [1,0]) == True # True

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

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