cat python/nomi-scope-e-variabili-locali.md

Lezione 35 15 min

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

  1. Crea una funzione con una variabile interna.
  2. Restituisci un risultato.
  3. 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.