Junior — Middle
Puoi spiegare come implementare un decoratore che non utilizza parametri?
sobes.tech AI
Risposta dell'AI
Un decoratore senza parametri è una funzione che prende un'altra funzione e ne restituisce una nuova con un comportamento aggiuntivo. Esempio di un decoratore semplice che mostra un messaggio prima di chiamare la funzione:
def simple_decorator(func):
def wrapper(*args, **kwargs):
print("Chiamata della funzione...")
return func(*args, **kwargs)
return wrapper
@simple_decorator
def say_hello(name):
print(f"Ciao, {name}!")
say_hello("Mondo")
Qui, simple_decorator non accetta parametri oltre alla funzione che decora. All'interno, viene creata una funzione annidata wrapper che aggiunge il comportamento necessario e chiama la funzione originale.