Bienvenido a la Comunidad de Treehouse

¿Quieres colaborar en errores de código? ¿Tienes errores que necesitan comentarios? ¿Buscas un par de ojos adicionales en tu último proyecto? aquí.

¿Buscas aprender algo nuevo?

Treehouse ofrece una prueba gratuita de siete días para estudiantes nuevos. Obtén acceso a miles de horas de contenido y únete a miles de

Inicia tu prueba gratuita

Python Python Orientado a Objetos Básico Emular funciones integradas __eq__

¿Puede __eq__ hacer una comparación de 3 formas entre 3 instancias?

¿Puede eq hacer una comparación de 3 vías entre 3 instancias?

1 Respuesta

Steven Parker
Steven Parker
244 163 puntos

El método __eq__ te permite redefinir lo que hace el operador de igualdad (==), pero la sintaxis del operador en sí limita su funcionamiento a solo dos operandos. Sin embargo, podrías combinar múltiples instancias del operador de igualdad normal usando el "and" lógico. Por ejemplo:

if FirstThing == NextThing y NextThing == LastThing:
    # los 3 son iguales

También puedes definir una nueva función o método que pruebe la igualdad entre tres (o más) parámetros:

def equals(*argumentos):
    para a en argumentos:
        if argumentos[0] != a:
            return False
    return Verdadero