【发布时间】:2020-01-13 22:17:32
【问题描述】:
我读到了这个(来自here):
用户自定义类默认有
__eq__()和__hash__()方法;使用它们,所有对象都比较不相等(除了它们自己),x.__hash__()返回一个适当的值,使得 x == y 意味着 x 是 y 和 hash(x) == hash(y)。
我想知道__eq__() 方法是否默认定义为:
def __eq__(self, other):
return hash(self) == hash(other)
【问题讨论】:
-
那只适用于
hashable 的东西。你将如何检查不可散列的东西? :)
标签: python python-3.x