Alias e Cloni¶
Dal momento che le variabili si riferiscono a oggetti, se assegniamo una variabile a un’altra, entrambe le variabili si riferiscono allo stesso oggetto:
In questo caso, il diagramma dei riferimenti è il seguente:
Dal momento che la stessa lista ha due nomi diversi, a
e b
, diciamo che entrambi sono alias. I cambiamenti fatti con un alias hanno effetto anche sull’altro. Nell’esempio sotto, possiamo vedere che a
e b
si riferiscono alla stessa lista dopo l’esecuzione dell’istruzione di assegnamento b = a
.
Clonare Liste¶
Se vogliamo modificare una lista e mantenere anche una copia dell’originale, dobbiamo fare una copia della lista stessa, non accontentandosi del solo riferimento. Questo processo è chiamato clonazione.
Il modo più semplice per clonare una lista è usare l’operatore di slice.
Facendo uno slice di a
crea una nuova lista.
Adesso siamo liberi di cambiare b
senza preoccuparci di a
. Infatti a
e b
sono oggetti lista completamente diversi.