Copia elenco Python ()

Il metodo copy () restituisce una copia superficiale dell'elenco.

Un elenco può essere copiato utilizzando l' =operatore. Per esempio,

 old_list = (1, 2, 3) new_list = old_list

Il problema con la copia di elenchi in questo modo è che se modifichi new_list, viene modificata anche old_list. È perché il nuovo elenco fa riferimento o punta allo stesso oggetto old_list.

 old_list = (1, 2, 3) new_list = old_list # add an element to list new_list.append('a') print('New List:', new_list) print('Old List:', old_list)

Produzione

 Vecchio elenco: (1, 2, 3, 'a') Nuovo elenco: (1, 2, 3, 'a')

Tuttavia, se è necessario che l'elenco originale non venga modificato quando viene modificato il nuovo elenco, è possibile utilizzare il copy()metodo.
Tutorial correlato: Python Shallow Copy vs Deep Copy

La sintassi del copy()metodo è:

 new_list = list.copy ()

parametri copy ()

Il copy()metodo non accetta parametri.

Valore restituito da copy ()

Il copy()metodo restituisce un nuovo elenco. Non modifica l'elenco originale.

Esempio 1: copia di un elenco

 # mixed list my_list = ('cat', 0, 6.7) # copying a list new_list = my_list.copy() print('Copied List:', new_list)

Produzione

 Elenco copiato: ('cat', 0, 6.7)

Se modifichi new_list nell'esempio precedente, my_list non verrà modificato.

Esempio 2: copia della lista utilizzando la sintassi delle sezioni

 # shallow copy using the slicing syntax # mixed list list = ('cat', 0, 6.7) # copying a list using slicing new_list = list(:) # Adding an element to the new list new_list.append('dog') # Printing new and old list print('Old List:', list) print('New List:', new_list)

Produzione

 Vecchia lista: ('cat', 0, 6.7) Nuova lista: ('cat', 0, 6.7, 'dog')

Articoli interessanti...