Menu
Coddy logo textTech

Introduzione ai decoratori

Fa parte della sezione Programmazione orientata agli oggetti del percorso Python di Coddy. Lezione 9 di 64.

I decoratori sono un modo per modificare o migliorare funzioni e classi senza cambiare il loro codice originale. Usano il simbolo @.

Ecco un esempio di decoratore semplice: 

def my_decorator(func):
    def wrapper():
        print("Before function runs")
        func()
        print("After function runs")
    return wrapper

Applica il decoratore usando @:

@my_decorator
def say_hello():
    print("Hello!")

Chiama la funzione decorata:

say_hello()

Output:

Before function runs
Hello!
After function runs

@my_decorator equivale a scrivere:

def say_hello():
    print("Hello!")

say_hello = my_decorator(say_hello)

Ma la sintassi @ è molto più pulita e facile da leggere.

Punto chiave: i decoratori avvolgono le funzioni per aggiungere funzionalità extra senza modificare il codice della funzione originale

Provalo tu

Questa lezione non include una sfida di codice.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Programmazione orientata agli oggetti

Esercitati da solo: Compilatore Python online