Metoda copy () vraća plitku kopiju popisa.
Popis se može kopirati pomoću =
operatora. Na primjer,
stari_popis = (1, 2, 3) novi_popis = stari_popis
Problem s kopiranjem popisa na ovaj način je taj što ako izmijenite novi_popis, mijenja se i stari_popis. To je zato što se novi popis odnosi na isti objekt stari_popis ili upućuje na njega.
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)
Izlaz
Stari popis: (1, 2, 3, 'a') Novi popis: (1, 2, 3, 'a')
No ako izvorni popis trebate nepromijenjen kad se novi popis promijeni, možete koristiti copy()
metodu.
Povezani vodič: Python plitko kopiranje protiv dubokog kopiranja
Sintaksa copy()
metode je:
new_list = list.copy ()
copy () parametri
copy()
Metoda ne poduzimati nikakve parametre.
Povratna vrijednost iz kopije ()
copy()
Metoda vraća novi popis. Ne mijenja izvorni popis.
Primjer 1: Kopiranje popisa
# mixed list my_list = ('cat', 0, 6.7) # copying a list new_list = my_list.copy() print('Copied List:', new_list)
Izlaz
Kopirani popis: ('mačka', 0, 6.7)
Ako izmijenite novi_popis u gornjem primjeru, moj_popis neće biti izmijenjen.
Primjer 2: Kopiranje popisa pomoću sintakse rezanja
# 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)
Izlaz
Stari popis: ('mačka', 0, 6.7) Novi popis: ('mačka', 0, 6.7, 'pas')