π‘ λλΆλΆμ λ°μ΄ν° ꡬ쑰λ ν΄λμ€λ₯Ό μ¬μ©ν΄μ λ§λ€μ΄μ§λ€.
π‘ ν΄λμ€λ₯Ό λ§λ λ€λ κ²μ, λλ§μ λ°μ΄ν° νμ
μ λ§λλ κ²κ³Ό κ°λ€.
class Cookie : def __init__(self, color) : # μμ±μ # pythonμμ λ©μλμ ν¨μμ μ°¨μ΄μ μ self ν€μλ ν¬ν¨ μ¬λΆμ΄λ€. self.color = color # self.colorλ λ§λλ νΉμ μΈμ€ν΄μ€μ μ μ©λλ€. def get_color(self) : return self.color def set_color(self, color) : self.color = color cookie_one = Cookie('green') # cookie_one μΈμ€ν΄μ€ κ·Έ μ체(self)μ μμ green μ΄λ€. > # classλ‘ LinkedList ꡬννκΈ° class LinkedList : def __init__(self, value) : pass def append(self, value) : pass #.....
π‘ ꡬ체μ μΌλ‘ λ°μ΄ν° νμ
μ λ°λΌ ν¬μΈν°κ° μ΄λ»κ² λ€λ₯΄κ² μλνλμ§μ λνμ¬.
π‘ μ μλ immutable νλ€. λ°λΌμ μ΄ λ°μ΄ν° νμ
μ μΈμ€ν΄μ€λ μμ±λ ν κ·Έ μνλ₯Ό λ³κ²½ν μ μλ€. λ§μ½ λ³νκ° νμν κ²½μ°, μλ‘μ΄ κ°μ²΄κ° μμ±λκ³ κΈ°μ‘΄ κ°μ²΄λ λ³κ²½λμ§ μλλ€.
π£οΈ νμ΄μ¬μμ, λ³μκ° μ μ₯λ 곡κ°μ 리ν΄ν΄μ£Όλ ν¨μ => id() // id(num1)
- immutable(λΆλ³) νμ
num1 = 11 num2 = num1 num2 = 22
- λ©λͺ¨λ¦¬ μ΄λκ°μ μ μ 11μ μμ±
- κ·Έλ¦¬κ³ λ³μ num1μ μμ±λ μ μ μ£Όμλ₯Ό κ°λ₯΄ν¨λ€.
- num2λ num1μ΄ κ°λ₯΄ν€κ³ μλ μ£Όμλ₯Ό ν λΉ λ°λλ€.
- λ©λͺ¨λ¦¬ μ΄λκ°μ μ μ 22λ₯Ό μμ±
- κ·Έλ¦¬κ³ λ³μ num2λ μμ±λ μ μ μ£Όμλ₯Ό κ°λ₯΄ν¨λ€.
- μ΄μ , num1 κ³Ό num2 λ μ΄μ κ°μ id κ°μ κ°μ§ μλλ€.
π‘ λμ λ리λ mutable νλ€. λ°λΌμ μ΄ λ°μ΄ν° νμ μ μΈμ€ν΄μ€λ μμ±λ νμλ κ·Έ μνλ₯Ό λ³κ²½ν μ μλ€.
- mutable νμ
dict1 = { 'value': 11 } dict2 = dict1 dict2['value'] = 22
- λ©λͺ¨λ¦¬ μ΄λκ°μ μμ λμ λλ¦¬κ° μμ±λ κ²μ΄λ€.
- dict1μ μμ±λ λμ λ리λ₯Ό κ°λ₯΄ν¬ κ²μ΄λ€.
- dict2λ dict1μ΄ κ°λ₯΄ν€κ³ μλ μ£Όμλ₯Ό ν λΉ λ°λλ€.
- dict2μ value κ°μ μμ νλ©΄, dict1, dict2κ° κ°λ₯΄ν€κ³ μλ λ©λͺ¨λ¦¬μ λμ λ리 κ°μ΄ μμ λλ€.
- κ·Έλ¬λ―λ‘ dict1 κ³Ό dict2λ κ°μ΄ μμ λλλΌλ νμ κ°μ id κ°μ κ°κΈ°μ ν΄λΉ κ°μ 곡μ νλ€.
π‘ linkedListμ nodeλ±μ νμ©νκΈ° μν΄ λ°λμ μ΄ν΄νκ³ μμ΄μΌ νλ κ°λ
- mutable νμ νμ©
dict1 = { 'value': 11 } dict2 = dict1 dict2['value'] = 22 dict3 = { 'value': 22 } dict2 = dict3
- λΆλͺ ν dict1μ dict2κ° κ°μ λ©λͺ¨λ¦¬μμ 곡κ°μ κ°λ¦¬ν€κ³ μμμ§λ§ dict2 = dict3κ° μ€νλλ μμ dict2κ°λ dict3μ λ©λͺ¨λ¦¬μ 곡κ°μ κ°λ¦¬ν€κ² λλ€.
π£οΈ κ°λΉμ§ 컬λ μ (Garbage Collection) :
μμ mutable νμ νμ© μμμμ, dict1, dict2, dict3 κ° λͺ¨λ κ°μ 곡κ°μ κ°λ¦¬ν€κ² λμ κ²½μ°, μ¦ λ©λͺ¨λ¦¬μ λ μ΄μ μ¬μ©λμ§ μλ λ°μ΄ν° κ°μ΄ μκΈΈ κ²½μ° νμ΄μ¬μ Garbage Collection νλ‘μΈμ€λ₯Ό μ¬μ©ν΄μ ν΄λΉ λ°μ΄ν° κ°μ μ κ±°νλ€.