Junior — Middle
Pouvez-vous expliquer ce qu'est un décorateur pour les méthodes de classe en Python?
sobes.tech IA
Réponse de l'IA
Un décorateur pour les méthodes de classe en Python est une fonction qui prend une méthode de classe et renvoie une version modifiée de cette méthode. Il permet d'ajouter un comportement supplémentaire à la méthode sans modifier son code source.
Par exemple, on peut utiliser un décorateur pour la journalisation des appels de méthode, la vérification des droits d'accès ou la mise en cache des résultats.
Exemple d'un décorateur simple pour une méthode de classe :
class MaClasse:
def decorateur(func):
def wrapper(self, *args, **kwargs):
print(f"Appel de la méthode {func.__name__}")
return func(self, *args, **kwargs)
return wrapper
@decorateur
def methode(self, x):
return x * 2
obj = MaClasse()
print(obj.methode(5)) # Affichera un message et le résultat 10
Ici, @decorateur enveloppe la méthode methode, ajoutant une sortie supplémentaire lors de l'appel.