2.5 - Variabili e identificatori.

Una variabile è una grandezza che può cambiare sia da una esecuzione ad un'altra sia durante una stessa esecuzione.
Può essere immaginata come una “cassetto” il cui contenuto può mutare in un qualsiasi momento. Quando la si richiama essa offre come risposta il suo contenuto. Nel programma circonf.py abbiamo utilizzato due variabili: raggio e circonferenza. L’istruzione
Print(“Circonferenza=”,circonferenza)
quando è stata eseguita ha stampato
Circonferenza=75.396
Dove 75.396 è il contenuto della variabile circonferenza in quel momento.
Ogni variabile utilizzata in Python deve essere definita e inizializzata.
Ciò avviene semplicemente assegnandole un valore iniziale; per esempio:
a = 20 oppure x = 23.12
in questo caso la variabile a viene inizializzata al valore 20 e, di conseguenza, trattata come un numero intero; la variabile x è inizializzata a 23.12 e trattata come un numero in virgola mobile.
Richiamiamo l’IDLE e proviamo a stampare il valore a+1:

Ovviamente l’interprete non conosce cosa sia “a”, per cui fornisce l’errore:
nome ‘a’ non è definito
ma se definiamo prima a ci fornisce la risposta corretta:

Quali nomi possiamo dare alle variabili?
Chiamiamo identificatore il nome di una variabile o di un processo.
Da un punto di vista sintattico un identificatore inizia con una lettera dell'alfabeto oppure con il simbolo di underscore: _ , eventualmente seguito da una o più lettere dell'alfabeto e/o cifre e/o il simbolo di underscore.
Alcuni identificatori sono standard o riservati, gli altri sono definiti da chi ha scritto il programma. Nell’esempio circonf.py è l'identificatore del processo (programma), print è il nome standard obbligatorio per scrivere sul monitor, per cui non può essere utilizzato come nome di variabile. Invece raggio e circonferenza sono identificatori non standard di variabili.
È bene sottolineare che gli identificatori in Python sono case sensitive, cioè distinguono le lettere minuscole dalle maiuscole, per cui gli identificatori rappresentati da Raggio, raggio, RAGGIO sono 3 identificatori distinti.
La figura successiva mostra l’uso di due variabili, a e A, completamente diverse tra loro.


Un identificatore, che può essere il nome di una variabile o, come vedremo, di una procedura/funzione, deve avere un nome significativo: esso deve rispecchiare il suo contenuto.
Se il nome è composto da più parole, queste devono essere separate dal tratto di sottolineatura ( il cosiddetto underscore “_” ).
Per esempio, per indicare i litri di benzina venduti utilizzeremo la variabile litri_benzina mentre il prezzo della benzina sarà indicato con prezzo_benzina; una procedura che cancelli lo schermo dovrà chiamarsi cancella_schermo.