Junior — Middle
Können Sie erklären, was ein Dekorator für Klassenmethoden in Python ist?
sobes.tech KI
Antwort von AI
Ein Dekorator für Klassenmethoden in Python ist eine Funktion, die eine Klassenmethode übernimmt und eine modifizierte Version dieser Methode zurückgibt. Er ermöglicht es, zusätzliches Verhalten zu einer Methode hinzuzufügen, ohne ihren Quellcode zu ändern.
Zum Beispiel kann man einen Dekorator verwenden, um Methodenaufrufe zu protokollieren, Zugriffsrechte zu überprüfen oder Ergebnisse zwischenzuspeichern.
Beispiel für einen einfachen Dekorator für eine Klassenmethode:
class MeineKlasse:
def dekorator(func):
def wrapper(self, *args, **kwargs):
print(f"Aufruf der Methode {func.__name__}")
return func(self, *args, **kwargs)
return wrapper
@dekorator
def methode(self, x):
return x * 2
obj = MeineKlasse()
print(obj.methode(5)) # Gibt eine Nachricht und das Ergebnis 10 aus
Hier umgibt @dekorator die Methode methode und fügt beim Aufruf eine zusätzliche Ausgabe hinzu.