Python-lijst kopiëren ()

De methode copy () retourneert een ondiepe kopie van de lijst.

Met de =operator kan een lijst worden gekopieerd . Bijvoorbeeld,

 old_list = (1, 2, 3) nieuwe_lijst = oude_lijst

Het probleem met het op deze manier kopiëren van lijsten is dat als je new_list wijzigt, old_list ook wordt gewijzigd. Het is omdat de nieuwe lijst verwijst naar of verwijst naar hetzelfde old_list-object.

 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)

Uitvoer

 Oude lijst: (1, 2, 3, 'a') Nieuwe lijst: (1, 2, 3, 'a')

Als u de oorspronkelijke lijst echter ongewijzigd wilt hebben wanneer de nieuwe lijst wordt gewijzigd, kunt u de copy()methode gebruiken.
Gerelateerde tutorial: Python Shallow Copy Vs Deep Copy

De syntaxis van de copy()methode is:

 new_list = lijst.copy ()

copy () parameters

De copy()methode heeft geen parameters.

Retourwaarde van kopie ()

De copy()methode retourneert een nieuwe lijst. Het wijzigt de oorspronkelijke lijst niet.

Voorbeeld 1: een lijst kopiëren

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

Uitvoer

 Gekopieerde lijst: ('cat', 0, 6.7)

Als u de nieuwe_lijst in het bovenstaande voorbeeld wijzigt, wordt my_list niet gewijzigd.

Voorbeeld 2: lijst kopiëren met de splitsingssyntaxis

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

Uitvoer

 Oude lijst: ('kat', 0, 6.7) Nieuwe lijst: ('kat', 0, 6,7, 'hond')

Interessante artikelen...