cat python/nomi-scope-e-variabili-locali.md
Nomi, scope e variabili locali
Capire dove una variabile esiste e perché non tutto deve essere globale.
Prima idea
Una variabile creata dentro una funzione vive dentro quella funzione. Questo evita che ogni pezzo del programma cambi tutto il resto per sbaglio.
Questa lezione fa parte del modulo Funzioni e codice ordinato. L’obiettivo del modulo è: Dare nomi alle azioni, passare dati, restituire risultati e tenere ordinati programmi che crescono.
Parole nuove
- scope: zona del codice dove un nome e visibile.
- variabile locale: variabile creata dentro una funzione.
Cosa impari
- Riconoscere una variabile locale.
- Passare dati come parametri invece di usare tutto globale.
- Restituire il risultato con return.
Esempio da copiare
def aggiungi_bonus(punti):
bonus = 5
return punti + bonus
risultato = aggiungi_bonus(20)
print(risultato)
# print(bonus) # fuori dalla funzione non esiste
Prima copialo senza modificarlo. Poi cambia una cosa sola e riesegui: una parola, un numero, un messaggio o un valore.
Prova guidata
- Crea una funzione con una variabile interna.
- Restituisci un risultato.
- Prova a stampare la variabile interna fuori e leggi l’errore.
Sfida piccola
Prendi l’esempio e rendilo tuo senza aggiungere complessità inutile. Se qualcosa si rompe, torna all’ultima versione funzionante e cambia una riga per volta.
Controllo finale
Hai finito quando sai spiegare perché bonus non esiste fuori dalla funzione.