list.copy()

Zwraca płytką kopię listy.

Zwraca
Nową listę z tymi samymi elementami.
Zmienia oryginał
Nie
Na tej stronie

Przykład

#
Python
original = ["HTML", "CSS"]
alias = original
copy = original.copy()

alias.append("JS")
copy.append("Python")

print(original)
print(copy)
Wynikzapisany wynik, możesz go sprawdzić
['HTML', 'CSS', 'JS']
['HTML', 'CSS', 'Python']

Definicja i zastosowanie

#

Metoda copy() tworzy nową listę z tymi samymi elementami. Zmiany w kopii (dodawanie, usuwanie elementów) nie wpływają na oryginał.

Samo przypisanie b = a nie kopiuje listy. Obie zmienne wskazują wtedy ten sam obiekt i zmiana przez jedną jest widoczna w drugiej.

Kopia jest płytka: zagnieżdżone listy i słowniki są wspólne dla obu list. Do pełnej, głębokiej kopii użyj copy.deepcopy().

Składnia

#
Składnia
lista.copy()

Więcej przykładów

#
Kopia płytka a głęboka
Python
import copy

board = [[0, 0], [0, 0]]
shallow = board.copy()
deep = copy.deepcopy(board)

shallow[0][0] = 1
print(board)
print(deep)
Wynikzapisany wynik, możesz go sprawdzić
[[1, 0], [0, 0]]
[[0, 0], [0, 0]]

Dobre praktyki

#
  • Równoważne sposoby płytkiej kopii to lista[:] i list(lista).
  • Przy listach list i list słowników sięgnij po copy.deepcopy().

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.