Esaminiamo un programma che estrae casualmente il numero di registro di un alunno che si “offre volontario” per l’interrogazione di informatica.

Si possono individuare due parti fondamentali:

  1. librerie necessarie al programma: sono un insieme di righe che iniziano con la parola riservata import: il programma che stiamo scrivendo utilizza sempre altre funzioni che “lo aiutano a svolgere il lavoro” e per poterle utilizzare è necessario richiamarle nel programma per indicare al compilatore in quale libreria le deve “andare a cercare”;
  2. il corpo del programma che si può idealmente ’’spezzare” in due sezioni:
    - la sezione dichiarativa, in cui viene effettuata la dichiarazione delle variabili che saranno utilizzate nel programma (vedi paragrafo successivo);
    - la sezione esecutiva, in cui vengono elencate una a una le istruzioni che devono essere eseguite, una per ogni riga.

Definizione e utilizzo delle variabili

Istruire un calcolatore significa essenzialmente creare e usare degli oggetti.
Tra questi oggetti quelli di uso più comune sono quelli che si chiamano variabili.
Le variabili indicano i "contenitori" dove vengono memorizzati i dati durante l'esecuzione e contengono numeri, caratteri, parole o frasi.
Si immagini la parete di una cantina suddivisa in tante scatole piccole e grandi per contenere gli svariati oggetti che si ammassano in cantina.
Queste scatole contengono tanti tipi di oggetti e hanno davanti un'etichetta che ci permette di individuare immediatamente il loro contenuto.
Senza queste etichette le scatole sulla parete sarebbero assolutamente inutili.
Ogni scatola che noi creiamo deve avere un nome. Il nome che assegniamo alla scatola e' l'equivalente dell'etichetta sulla scatola della cantina.
Ovviamente dovremo scegliere dei nomi significativi per le nostre scatole per documentare così a cosa servono. Ad esempio: SCATOLA1, SCAT1, SAL1, SAL2, SALAME, PIPPO, PIPPO2A, PIPPO4C, SCARPEVECCHIE, VINO.
Sono validi anche nomi molto corti come: A, B, C, A1, B3 o lunghi come:

SUPERCALIFRAGILISTICHESPIRALIDOSO

Più specificatamente, una variabile è un’area della memoria del calcolatore (collocata nella memoria RAM) destinata a contenere un particolare dato; viene distinta dalle altre aree per mezzo di un nome (identificatore) che il programmatore stabilisce in modo univoco. Per utilizzare una variabile bisogna dapprima crearla mediante un’operazione che consente di decidere il nome (l’identificatore) che serve per poterla “richiamare”: non è necessario definire la sua natura (il tipo), cioè indicare “cosa” potrà contenere, in quanto Python effettua la tipizzazione in modo automatico, cioè la variabile assume automaticamente un “tipo” dinamicamente, al suo primo utilizzo.

I nomi delle variabili possono essere lunghi quanto si desidera e possono contenere sia lettere che numeri, ma devono sempre iniziare con una lettera
oppure con il carattere "_".
È legale usare sia lettere maiuscole che minuscole.
Ricordatevi comunque che il nostro computer interpreta in modo diverso i caratteri minuscoli dai caratteri maiuscoli in quanto è un linguaggio case sensitive (cioè sensibile alle maiuscole): NUMERO, numero e NUmeRO sono per il calcolatore tre variabili diverse tra loro; è buona norma scrivere gli identificatori delle variabili in minuscolo.

Il carattere di sottolineatura (_) può far parte di un nome ed è spesso usato in nomi di variabili composti da più parole. Ad esempio: il_mio_nome, il_prezzo_del_pane, _il_mio_cane. In alternativa i nomi possono essere composti usando l'iniziale maiuscola per ciascuna di esse, con il resto dei caratteri lasciati in minuscolo come in IlMioNome, IlPrezzoDelPane, Le_scarpe_del_bimbo.
Sembra che tra i due metodi quest’ultimo sia il più diffuso.
Non e' possibile invece “battezzare” la nostra variabile con nomi come 1A, 3P, 4SAL perché il suo nome non può iniziare con un numero, ma solo con una lettera. Assegnando un nome di questo tipo ad una scatola otterremo un messaggio di errore di sintassi. L'interprete ci dirà che il nome che abbiamo usato è illegale ma non dirà perché è illegale, dovremo scoprirlo noi.

Vediamo cosa dice il calcolatore quando sbagliamo il nome di una variabile.
Supponiamo di avere tre variabili diverse che abbiamo chiamato:

76strumenti, milione$, lambda

Il nostro interprete ci dirà per ognuna di loro:

SyntaxError: invalid syntax

Come mai?

Il nome 76strumenti è illegale perché non inizia con una lettera, milione$ e' illegale perché contiene un carattere proibito, il $, lambda è illegale perché una delle parole riservate di Python.
Tutti i linguaggi di programmazione hanno alcune parole riservate che ne definiscono le regole e non possono essere usate come nomi delle variabili.
Le parole riservate di Python sono 28 e sono le seguenti:

and continue else for
import not raise assert
def except  from in
or return break del
exec global is pass
try class elif finally
if lambda print while

Il contenuto delle variabili
Le nostre variabili sono state create per avere dei contenuti.
Dobbiamo fare attenzione a non confondere il nome della variabile con il suo contenuto.
Il nome di una variabile non cambia mai mentre il suo contenuto cambierà spesso.
Ad esempio la variabile PIPPO potrà contenere, in un certo momento, il numero 8, poi il numero 999 e quindi il numero 2.5.
Un programmatore conosce sempre il nome della variabile perché è stato lui a “battezzarla”, ma di solito non ne conosce il contenuto, perché può averlo dimenticato oppure perché la variabile è stata utilizzata per calcoli complicati.
Tuttavia il programmatore in qualsiasi momento può controllarne il contenuto.
Per ricordare meglio la differenza fra nome e contenuto di una variabile, immaginiamo di aver scritto il nome della scatola con un pennarello indelebile sulla scatola stessa e che il contenuto sia stato scritto su un foglietto che in qualunque momento può essere tolto dalla scatola e sostituito con un altro foglietto. Il numero che noi inseriamo nella scatola è il suo valore numerico.
Un valore è una delle cose fondamentali manipolate da un programmatore, come le lettere dell’alfabeto nella scrittura. I valori possono essere di tipo diverso, numeri e caratteri.