class A():
def __init__(self, data=''):
self.data = data
def __str__(self):
return str(self.data)
d = {}
elem = A()
d[elem] = 'abc'
elem2 = A()
print d[elem2] # KeyError
# actually elem2! was used not elem
как я могу реализовать это без ошибок?
РЕДАКТИРОВАТЬ:
FFFUUU, ошибка была:
Я попытался получить d [elem2]
(не elem
) с другим экземпляром A (), НО с тем же содержимым. (позор мне)
Тем не менее .. как я могу это сделать? redefine __ hash __
?