【发布时间】:2015-11-16 05:09:38
【问题描述】:
这段代码sn-p真让我费解:
class O(object):
pass
O() == O() # False
O() is O() # False
hash(O()) == hash(O()) # True !
id(O()) == id(O()) # True !!!
我一直以为is运算符是在比较ids,而默认的实例相等检查(==)也比较ids,或者至少是hashes:
2 个类实例如何共享相同的id,但在任何方面都不相等??
我正在使用 CPython 2.7.6。
【问题讨论】:
标签: python object hash equality