[Python] (senza oggetto)

Giovanni Porcari giovanni.porcari a softwell.it
Mar 24 Apr 2012 14:05:02 CEST


Il giorno 24/apr/2012, alle ore 10:52, Val ha scritto:

> A parte la lettura del Tutorial di GdV che è comunque ben strutturato, dall'altro della mia grande esperienza come principiante, :-) io mi sentirei di consigliare, tra gli altri, un PDF del 2009, scritto in italianoda professori italiani del politecnico di Torino e utilizzato anche in alcune scuole medie superiori. E' scaricabile qui:
> 
> 
> http://scuola.linux.it/polito/python.html
> 
> La licenza è Creative Commons
> 
> 
> 


Vado sempre a vedere come sono spiegate le variabili perchè è qui che spesso si annida  la 'trappola' per chi deve imparare.

Ora leggo nel documento citato che assimila le variabili a scatole :

"Le nostre scatole sono state create per avere dei contenuti.
Dobbiamo fare attenzione a non confondere il nome della scatola con il suo contenuto.
Il nome di una scatola non cambia mai mentre il suo contenuto cambierà spesso.
Ad esempio la scatola 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 scatola perché è stato lui a “battezzarla”, ma di solito non 
ne conosce il contenuto, perchè può averlo dimenticato oppure perchè la scatola è stata utilizzata per calcoli complicati."

Eccetera...

A questo punto per smantellare questo concetto bisogna ricorrere al lavaggio del cervello.

Non sarebbe più semplice dire da subito che ci sono oggetti mutabili (le scatole) e oggetti immutabili ?

Ovvero se scrivo foo = 'Pieruccio va al mercato' non creo la scatola foo.
Creo una strisciolina di carta con scritto : 'Pieruccio va al mercato' e la lego con un filo 
ad un'etichetta che dice 'foo'.

E se poi faccio foo = 'Pieruccio va in pizzeria' allora stacco il filo che collega foo
alla strisciolina 'Pieruccio va al mercato' e lo lego alla nuova 
strisciolina che dice 'Pieruccio va in pizzeria'.

Se la strisciolina 'Pieruccio va al mercato' non ha altri fili collegati allora la butto nel cestino.


Lo so che è un'esempio idiota ma salverebbe molti dalla convinzione che le variabili python siano come quelle
FORTRAN o COBOL o PASCAL etc etc. 

Vabbè... sono un vecchio pedante ;)

G








Maggiori informazioni sulla lista Python