Copie de la liste Python ()

La méthode copy () renvoie une copie superficielle de la liste.

Une liste peut être copiée à l'aide de l' =opérateur. Par exemple,

 ancienne_liste = (1, 2, 3) nouvelle_liste = ancienne_liste

Le problème avec la copie de listes de cette manière est que si vous modifiez new_list, old_list est également modifiée. C'est parce que la nouvelle liste fait référence ou pointe vers le même objet 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)

Production

 Ancienne liste: (1, 2, 3, 'a') Nouvelle liste: (1, 2, 3, 'a')

Cependant, si vous avez besoin de la liste d'origine inchangée lorsque la nouvelle liste est modifiée, vous pouvez utiliser la copy()méthode.
Tutoriel associé: Python Shallow Copy Vs Deep Copy

La syntaxe de la copy()méthode est:

 nouvelle_liste = list.copy ()

paramètres de copie ()

La copy()méthode ne prend aucun paramètre.

Valeur de retour de la copie ()

La copy()méthode renvoie une nouvelle liste. Cela ne modifie pas la liste d'origine.

Exemple 1: copie d'une liste

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

Production

 Liste copiée: ('cat', 0, 6.7)

Si vous modifiez la nouvelle_liste dans l'exemple ci-dessus, ma_liste ne sera pas modifiée.

Exemple 2: Copier la liste à l'aide de la syntaxe de découpage

 # 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)

Production

 Ancienne liste: ('cat', 0, 6.7) Nouvelle liste: ('cat', 0, 6.7, 'dog')

Articles intéressants...