Python – #30 – set() – .copy()

Metoda .copy()

Metoda zwraca płytką kopię (shallow copy) set’a. Płytka kopia powoduje przekopiowanie jedynie wartości set’a. Gdy porównamy identyfikator obiektu oryginalnego set’a z identyfikatorem obiektu skopiowanego set’a, to zauważymy, że identyfikatory posiadają różne wartości.

Składnia:

set.copy()

Parametry:

Metoda nie posiada parametrów.

Wartość zwracana:

set()

Przykłady:

set1 = {1, 2, 3}
set2 = set1.copy()  # --> shallow copy
print(set2)  # wynik --> [1, 2, 3]
print(id(set1))
print(id(set2))  # wniosek --> id(set1) != id(set2)

set3 = {1, 2, 3}
set4 = set3  # deep copy
print(set4)  # wynik --> [1, 2, 3]
print(id(set3))
print(id(set4))  # wniosek --> id(set3) == id(set4)

Kopiowanie głębokie (deep copy) powoduje skopiowanie referencji do obiektu, przez co, gdy będziemy wprowadzać zmiany w kopii, wówczas również ulegnie zmianie oryginalny obiekt.

Autor artykułu
Dominik Bednarski

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.