How do two or more relational operators in a single sentence work? For example:
5 < 5 <= 3 > 10
Python supports double-ended comparisons. For example,
3 < x <= 7
is a check for 3 < x
and x <= 7
(with x
being evaluated just once).
By extension,
5 < 5 <= 3 > 10
means (5 < 5)
and (5 <= 3)
and (3 > 10)
, all of which are False
, so the whole expression evaluates to False
.
https://docs.python.org/2/reference/expressions.html#comparisons
It's evaluated in order, so your expression expands to
5 < 5 and 5 <= 3 and 3 > 10
which evaluates to False
来源:https://stackoverflow.com/questions/22776897/use-two-or-more-relational-operators-in-one-sentence-in-python