__eq__

Qu'est-ce que la méthode spéciale __eq__ en Python ?

Qu'est-ce que la méthode __eq__ ?

La méthode spéciale __eq__ (eq pour equal) permet de définir le comportement de l'opérateur == sur les objets des classes que vous allez créer. Imaginez une instance a et une instance b, Python appelle en réalité a.__eq__(b). Si vous ne définissez pas cette méthode, par défaut Python comparera l'identité des objets. C'est-à-dire, si les deux objets ont le même emplacement en mémoire, comme ce que vous pouvez faire avec l'opérateur is.

class Utilisateur:
    def __init__(self, nom, email):
        self.nom = nom
        self.email = email

u1 = Utilisateur("Patrick", "[email protected]")
u2 = Utilisateur("Patrick", "[email protected]")

print(u1 == u2)  # Affiche : False
print(u1 == u1)  # Affiche : True
PYTHON
Un instant

Créez un compte pour exécuter ce code

Inscrivez-vous gratuitement pour modifier et exécuter du code Python directement dans votre navigateur.

Bravo, tu es prêt à passer à la suite

Rechercher sur le site

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.