세트로 바꾸고 싶은 오브젝트 목록이 있습니다. 내 개체에는 몇 가지 필드가 포함되어 있는데 그 중 일부는 o.id
및 o.area
입니다. 이 두 필드가 같으면 두 객체가 같아야합니다. 예 : o1==o2
o1.area==o2.area and o1.id==o2.id
인 경우에만 해당됩니다.Python : 어떻게 세트가 작동합니까?
__eq__
및 __cmp__
을 덮어 쓰려고했지만 오류가 발생했습니다 : TypeError: unhashable instance
.
무엇을 덮어 써야합니까?
http://docs.python.org/library/stdtypes.html#set-types-set-frozenset 및 http://docs.python.org/glossary.html#term-hashable –