Metoda copy () vrací mělkou kopii seznamu.
Seznam lze zkopírovat pomocí =
operátoru. Například,
old_list = (1, 2, 3) new_list = old_list
Problém s kopírováním seznamů tímto způsobem je, že pokud upravíte new_list, změní se také old_list. Je to proto, že nový seznam odkazuje nebo odkazuje na stejný objekt 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)
Výstup
Starý seznam: (1, 2, 3, 'a') Nový seznam: (1, 2, 3, 'a')
Pokud však potřebujete změnit původní seznam při změně nového seznamu, můžete použít copy()
metodu.
Související výukový program: Python Shallow Copy Vs Deep Copy
Syntaxe copy()
metody je:
new_list = list.copy ()
copy () parametry
copy()
Metoda nebere žádné parametry.
Návratová hodnota z kopie ()
copy()
Metoda vrací nový seznam. Nezmění původní seznam.
Příklad 1: Kopírování seznamu
# mixed list my_list = ('cat', 0, 6.7) # copying a list new_list = my_list.copy() print('Copied List:', new_list)
Výstup
Zkopírovaný seznam: ('kočka', 0, 6,7)
Pokud ve výše uvedeném příkladu upravíte seznam new_list, seznam my_list nebude upraven.
Příklad 2: Kopírování seznamu pomocí syntaxe krájení
# 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)
Výstup
Starý seznam: ('kočka', 0, 6,7) Nový seznam: ('kočka', 0, 6,7, 'pes')