-
优先级:比较运算符 > 布尔运算符;比较运算符优先级相同
-
比较可以连续:如 x < y <=z,等价于 x<y and y <= z
-
八种比较操作:
-
< strictly less than
-
<= less than or equal
-
> strictly greater than
-
>= greater than or equal
-
== equal
-
== not equal
-
is object identity
-
is not negated object identity
-
不同类型的对象无法比较,除了数字类型外。此外,某些类型如函数对象仅支持degenerate概念,任何该类型的2个对象不相等。
-
无法比较,报错TypeError:
-
复数与其他类型
-
不同类型的对象
-
未定义排序规则
-
不同实例通常不相等,除非实例的类定义了“__eq__()”方法
-
相同类型的实例或不同类型的对象,无法进行排序,除非对类进行定义足够多的方法“__lt__()”, “__le__()”, “__gt__()”和“__ge__()”(如果需要约定俗成的比较符,通常__lt__()和__eq__()就足够了)
-
“is”和“is not”不能定制,它们可用于所有对象并且不会抛出异常
-
“in”和“not in ”用于可迭代对象或具有“__contains__()”方法的对象