== 或 != 在链式比较中有用吗?

Is there a use for == or != in chained comparisons?

我遇到了这个问题:

Why does the expression 0 < 0 == 0 return False in Python?

一旦您理解了 Python 中的链式比较,答案就非常有意义了。

链式比较允许您编写类似 0 < x < 100 的内容,这对于测试是否介于 0 和 100 之间非常方便。但是在某些情况下使用 [=11 甚至有意义吗? =] 或 != 在比较的两边?例如,0 < x == 100 相当于 x == 100

是否将 ==!= 包含在链接语法中只是为了让它们不必成为规则的例外,或者是否存在实际用例?

链接 == 最常见的用例是将它与自身链接起来。 x == y == z 是测试三件事是否相等的简单方法。

在比较链中使用 != 偶尔也有用,但往往不太清楚。 0 < x != 100 < x and x != 10更简洁,但是这两个比较感觉不像x == y == z那么像一个大比较,而且x != y != z通常是一个错误。