Metóda copy () vracia plytkú kópiu zoznamu.
Zoznam je možné kopírovať pomocou =
operátora. Napríklad,
old_list = (1, 2, 3) new_list = old_list
Problém s kopírovaním zoznamov týmto spôsobom je, že ak upravíte new_list, upraví sa aj old_list. Je to preto, lebo nový zoznam odkazuje alebo odkazuje na rovnaký 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ýkon
Starý zoznam: (1, 2, 3, „a“) Nový zoznam: (1, 2, 3, „a“)
Ak však pri zmene nového zoznamu potrebujete pôvodný zoznam nezmenený, môžete použiť túto copy()
metódu.
Súvisiaci výukový program: Plytká kópia Pythonu vs. Hĺbková kópia
Syntax copy()
metódy je:
new_list = list.copy ()
copy () parametre
copy()
Metóda neberie žiadne parametre.
Vrátená hodnota z kópie ()
copy()
Metóda vracia nový zoznam. Neupravuje pôvodný zoznam.
Príklad 1: Kopírovanie zoznamu
# mixed list my_list = ('cat', 0, 6.7) # copying a list new_list = my_list.copy() print('Copied List:', new_list)
Výkon
Skopírovaný zoznam: („mačka“, 0, 6,7)
Ak upravíte zoznam new_list vo vyššie uvedenom príklade, zoznam my_list sa nezmení.
Príklad 2: Kopírovanie zoznamu pomocou syntaxe krájania
# 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ýkon
Starý zoznam: („mačka“, 0, 6,7) Nový zoznam: („mačka“, 0, 6,7, „pes“)