Come copiare una lista in Python
Per fare la copia di una variabile lista in Python, usare la tecnica dello slicing.
listacopia = lista[:]
I due punti tra parentesi quadre [:] selezionano tutti gli elementi della variabile lista.
Come copiare una parte della lista
Per copiare soltanto una parte della lista, indicare il primo elemento della lista parziale a sinistra dei due punti (inizio) e l'ultimo elemento a destra (fine).
listacopia = lista[inizio:fine]
Se si indica l'ultimo elemento, quest'ultimo non è incluso nella lista copia.
Nota. Se non indichi l'ultimo elemento ( es [1:] ), lo slicing prende di default l'ultimo elemento della lista. Se non indichi il primo elemento ( es [:7] ), viene preso di default il primo elemento della lista [0].
Un esempio
Esempio 1
Creare una lista con cinque elementi.
lista=['A','B','C','D','E']
Copiare tutti gli elementi della lista in una nuova variabile listacopia.
listacopia=lista[:]
Visualizzare il contenuto della nuova variabile.
>>> listacopia
['A', 'B', 'C', 'D', 'E']
Anche la variabile di destinazione è una lista e contiene tutti gli elementi della variabile lista di origine.
Esempio 2
Creare una lista con cinque elementi.
lista=['A','B','C','D','E']
Copiare soltanto il secondo (B) e il terzo elemento (C) della lista.
listacopia=lista[1:3]
Il secondo elemento della lista ha indice [1] mentre il terzo [2].
Quindi, l'intervallo di selezione è [1,3].
- 1 = l'indice del primo elemento da copiare
- 3 = l'indice dell'ultimo elemento escluso dalla selezione.
Visualizzare il contenuto della nuova variabile.
>>> listacopia
['B', 'C']
Python ha copiato soltanto gli elementi compresi nell'intervallo [1:3] dello slicing.
Nota. Il primo elemento di una lista ha sempre indice [0]. L'indice [1] è associato al secondo elemento della lista. L'indice [2] al terzo, ecc.