Poziom: średni
Fiszka #111 · Python
Jakie są różnice między "deep copy" a "shallow copy" w Pythonie?
💡 Wskazówka do nauki: Zanim odsłonisz odpowiedź poniżej, spróbuj samodzielnie sformułować definicję lub napisać krótki przykład kodu w głowie (albo w naszym edytorze online).
Pokaż odpowiedź i przykład kodu
Opis i wyjaśnienie:
"Deep copy" tworzy kopię obiektu oraz kopie wszystkich obiektów zawartych wewnątrz, natomiast "shallow copy" kopiuje tylko sam obiekt, a nie jego zawartość.
Przykład w Pythonie:
import copy
orig = [[1],[2]]
cp = copy.deepcopy(orig)
orig[0].append(9)
print(cp) # bez zmian