鏈比較
你可以使用鏈式比較將多個專案與多個比較運算子進行比較例如
x > y > z
只是一個簡短的形式:
x > y and y > z
只有當兩個比較都是 True
時,才會評估為 True
。
一般形式是
a OP b OP c OP d ...
其中 OP
表示你可以使用的多個比較操作之一,字母表示任意有效表示式。
請注意,
0 != 1 != 0
評估為True
,即使0 != 0
是False
。與普通的數學符號不同,其中x != y != z
意味著x
,y
和z
具有不同的值。在大多數情況下,連結==
操作具有自然意義,因為相等通常是可傳遞的。
樣式
只要你具有正確的語法,就沒有理論限制你使用的專案和比較操作:
1 > -1 < 2 > 0.5 < 100 != 24
如果每個比較返回 True
,則返回 True
。但是,使用複雜的連結並不是一種好的風格。一個好的連結將是定向的,而不是更復雜
1 > x > -4 > y != 8
副作用
一旦一個比較返回 False
,表示式立即評估為 False
,跳過所有剩餘的比較。
請注意,a > exp > b
中的表示式 exp
將僅被評估一次,而在。的情況下
a > exp and exp > b
如果 a > exp
為真,則 exp
將被計算兩次。