Python List-kopia ()

Metoden copy () returnerar en grunt kopia av listan.

En lista kan kopieras med =operatören. Till exempel,

 old_list = (1, 2, 3) new_list = old_list

Problemet med att kopiera listor på detta sätt är att om du ändrar new_list så ändras old_list också. Det beror på att den nya listan refererar till eller pekar på samma old_list-objekt.

 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)

Produktion

 Gammal lista: (1, 2, 3, 'a') Ny lista: (1, 2, 3, 'a')

Men om du behöver den ursprungliga listan oförändrad när den nya listan ändras kan du använda copy()metoden.
Relaterad handledning: Python Shallow Copy Vs Deep Copy

Syntaxen för copy()metoden är:

 new_list = list.copy ()

copy () -parametrar

Den copy()metoden tar inte några parametrar.

Returvärde från kopia ()

Den copy()metoden returnerar en ny lista. Det ändrar inte originallistan.

Exempel 1: Kopiera en lista

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

Produktion

 Kopierad lista: ('cat', 0, 6.7)

Om du ändrar den nya listan i exemplet ovan kommer min_lista inte att ändras.

Exempel 2: Kopiera lista med skivsyntax

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

Produktion

 Old List: ('cat', 0, 6.7) New List: ('cat', 0, 6.7, 'dog')

Intressanta artiklar...