[pyar] Duda acerca de sets
Tordek
kedrot en gmail.com
Dom Ene 29 02:41:49 ART 2012
On 29/01/12 02:28, Lucas Liendo wrote:
> En el programa de prueba para la lista (l) la comparacion se realiza
> correctamente (ingresa a __eq__ como es esperado) y la lista posee
> un unico elemento como debe ser. En el segundo caso intento hacer lo
> mismo sobre un set (s) pero se puede ver que terminan ingresando los
> 2 objetos a la coleccion, lo cual es incorrecto. ¿Sera necesario
> redifinir algun metodo adicional?
Tenés que definir __hash__:
def __hash__(self):
return hash(self.id)
De http://docs.python.org/library/sets.html:
"[...] the requirements for set elements are the same as those for
dictionary keys; namely, that the element defines both __eq__() and
__hash__()."
--
Guillermo O. «Tordek» Freschi. Programador, Escritor, Genio Maligno.
http://tordek.com.ar :: http://twitter.com/tordek
More information about the pyar
mailing list