Fazer uma classe python definida pelo usuário classificável, hashable

Quais métodos precisam ser substituídos / implementados ao tornar as classes definidas pelo usuário classificáveis e / ou hashable em pytho

Quais são as dicas a observar?

Eu digitodir({}) no meu intérprete para obter uma lista de métodos nos dicionários internos. Destas, suponho que preciso implementar algum subconjunto de

['__cmp__', '__eq__', '__ge__', '__gt__', '__hash__', '__le__', '__lt__', '__ne__']

Existe uma diferença em quais métodos devem ser implementados para o Python3 em oposição ao Python

questionAnswers(4)

yourAnswerToTheQuestion