class A(object):
def __cmp__(self):
print '__cmp__'
return object.__cmp__(self)
def __eq__(self, rhs):
print '__eq__'
return True
a1 = A()
a2 = A()
print a1 in set([a1])
print a1 in set([a2])
Почему первая строка печатает True, а вторая печатает False? И ни один из них не входит в оператор eq?
Я использую Python 2.6