Sobes.tech
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.