將多個變數與單一值比較
問題描述:
問題描述:x = 0 y = 1 z = 3 mylist = [] if x or y or z == 0: mylist.append("c") if x or y or z == 1: mylist.append("d") if x or y or z == 2: mylist.append("e") if x or y or z == 3: mylist.append("f")尋求一尋求一問種方法Python 確定多個變數是否等於特定整數,然後產生由三個字母組成的字串。例如,給定:
...預期輸出將是 ["c", "d", "f"] 列表。
答案:(x == False or y == False) or (y == False or z == False)提供的程式碼誤解了 Python 中的布林表達式。 or運算子分別檢查每一側,得出以下計算結果:
if 1 in (x, y, z): ....要驗證至少一個變數等於所需的整數,請使用以下表達式:
if 1 in {x, y, z}: ....
或者,為了改善效率:
解釋:x or y or z == 0運算子在Python中具有優先權,或運算子的優先權低於等於(=) 。因此,首先評估平等。此外,or 運算子傳回遇到的第一個真值。這表示如果 x 不為 0,則程式碼序列:
x == 1 or y == 1 or z == 1將傳回 False,即使 y 或 z 為 0。若要根據單一值正確評估多個變量,請使用以下表達式:
以上是如何有效地將多個 Python 變數與單一整數值進行比較?的詳細內容。更多資訊請關注PHP中文網其他相關文章!