Junior — Middle
Erklären Sie das Konzept der Dekorateure in Python und wie sie verwendet werden, um das Verhalten von Funktionen zu ändern.
sobes.tech KI
Antwort von AI
Decorators in Python sind Funktionen, die eine andere Funktion annehmen und eine neue Funktion mit verändertem oder erweitertem Verhalten zurückgeben, ohne den Quellcode der dekorierten Funktion zu ändern.
Sie werden häufig verwendet für:
- Protokollierung von Aufrufen
- Zugriffskontrollprüfungen
- Zwischenspeicherung von Ergebnissen
- Messung der Ausführungszeit
Ein einfaches Beispiel für einen Decorator, der eine Nachricht vor und nach dem Funktionsaufruf ausgibt:
def decorator(func):
def wrapper(*args, **kwargs):
print("Vor dem Funktionsaufruf")
result = func(*args, **kwargs)
print("Nach dem Funktionsaufruf")
return result
return wrapper
@decorator
def sag_hallo(name):
print(f"Hallo, {name}!")
sag_hallo("Welt")
Die Ausgabe wird sein:
Vor dem Funktionsaufruf
Hallo, Welt!
Nach dem Funktionsaufruf
Auf diese Weise ermöglichen Decorators, das Verhalten von Funktionen dynamisch zu ändern, ohne ihren Quellcode zu modifizieren.