【发布时间】:2018-05-27 03:46:11
【问题描述】:
Python 提供了重载== 运算符和!= 运算符的特性。但为什么?重载== 和!= 是否会自动与== 相反(实际值)?
一个结果不应该自动暗示另一个吗?
【问题讨论】:
-
说你有
x = 1和y = 2,if x == 1 and x != 2确实没用,但是检查if x == 1 and x != y是另一回事,如果有x = y的可能性。跨度> -
想象一下数据库的 ORM 中的过滤器。两个运算符都重载时,可以为它们生成不同的 SQL。
-
注意:这不是一个坏的问题。稍微改写一下,这是一个很好的问题,突出了 python 的一个特定设计特性。
标签: python python-3.x class