λ€λ₯Έ νλ‘κ·Έλλ° μΈμ΄μμλ λ³μλ₯Ό λ§λ€ λ μλ£νμ μ§μ μ§μ ν΄μΌ νλ€.
>>> a = 1
>>> b = "python"
>>> c = [1, 2, 3]
λ³μλ₯Ό λ§λ€ λλ = κΈ°νΈλ₯Ό μ¬μ©νλ€.
β
λ³μ μ΄λ¦ = λ³μμ μ μ₯ν κ°
β
λ€λ₯Έ νλ‘κ·Έλλ° μΈμ΄μμλ λ³μλ₯Ό λ§λ€ λ μλ£νμ μ§μ μ§μ ν΄μΌ νλ€. νμ§λ§ νμ΄μ¬μ λ³μμ μ μ₯λ κ°μ μ€μ€λ‘ νλ¨νμ¬ μλ£νμ μ§μ νλ€.
β
ββ
ββ
βΆ λ³μλ?
νμ΄μ¬μμ μ¬μ©νλ λ³μλ κ°μ²΄λ₯Ό κ°λ¦¬ν€λ κ²μ΄λΌκ³ λ λ§ν μ μλ€. κ°μ²΄λ μ°λ¦¬κ° μ§κΈκ» 보μ μ¨ μλ£νκ³Ό κ°μ κ²μ μλ―Ένλ λ§μ΄λ€.
>>> a = [1, 2, 3]
λ³μ aλ [1, 2, 3] 리μ€νΈκ° μ μ₯λ λ©λͺ¨λ¦¬μ μ£Όμλ₯Ό κ°λ¦¬ν¨λ€.
>>> a = [1, 2, 3]
>>> id(a)
4303029896
id ν¨μλ λ³μκ° κ°λ¦¬ν€κ³ μλ κ°μ²΄μ μ£Όμ κ°μ λλ €μ£Όλ νμ΄μ¬ λ΄μ₯ ν¨μμ΄λ€.
⢠리μ€νΈλ₯Ό 볡μ¬ν λ (리μ€νΈ μλ£νμμ κ°μ₯ νΌλνκΈ° μ¬μ)
>>> a = [1, 2, 3]
>>> b = a
bμ aλ μμ ν λμΌνλ€κ³ ν μ μλ€.
>>> id(a)
4303029896
>>> id(b)
4303029896
id(a)μ κ°κ³Ό id(b)μ κ°μ΄ λμΌνλ€.
μ¦, aκ° κ°λ¦¬ν€λ λμκ³Ό bκ° κ°λ¦¬ν€λ λμμ΄ λμΌνλ€λ κ²μ μ μ μλ€.
>>> a is b ← aμ bκ° κ°λ¦¬ν€λ κ°μ²΄λ λμΌνκ°?
True
λμΌν κ°μ²΄λ₯Ό κ°λ¦¬ν€κ³ μλμ§μ λν΄μ νλ¨νλ νμ΄μ¬ λͺ λ Ήμ΄ isλ₯Ό λ€μκ³Ό κ°μ΄ μ€νν΄λ μμ μ°Έ(True)λ₯Ό λλ €μ€λ€.
>>> a[1] = 4
>>> a
[1, 4, 3]
>>> b
[1, 4, 3]
a 리μ€νΈμ λ λ²μ§Έ μμλ₯Ό κ° 4λ‘ λ°κΎΈμλλ aλ§ λ°λλ κ²μ΄ μλλΌ bλ λκ°μ΄ λ°λμλ€.
a, b λͺ¨λ λμΌν 리μ€νΈλ₯Ό κ°λ¦¬ν€κ³ μκΈ° λλ¬Έμ΄λ€.
- [:] μ¬μ©
리μ€νΈ μ 체λ₯Ό κ°λ¦¬ν€λ [:]λ₯Ό μ¬μ©ν΄μ 볡μ¬.
>>> a = [1, 2, 3]
>>> b = a[:] ← 리μ€νΈ aμ μ²μ μμλΆν° λ μμκΉμ§ μ¬λΌμ΄μ±
>>> a[1] = 4
>>> a
[1, 4, 3]
>>> b
[1, 2, 3]
a 리μ€νΈ κ°μ λ°κΎΈλλΌλ b 리μ€νΈμλ μν₯μ λΌμΉμ§ μλλ€.
- copy λͺ¨λ μ¬μ©
>>> from copy import copy
>>> a = [1, 2, 3]
>>> b = copy(a)
μ μμμ b = copy(a)λ b = a[:]κ³Ό λμΌνλ€.
>>> a
[1, 2, 3]
>>> b
[1, 2, 3]
>>> b is a
False
μ¬κΈ°μ b is aκ° Falseλ₯Ό λλ €μ£Όλ―λ‘ bμ aκ° κ°λ¦¬ν€λ κ°μ²΄λ μλ‘ λ€λ₯΄λ€λ κ²μ μ μ μλ€.
βΆ λ³μλ₯Ό λ§λλ μ¬λ¬ κ°μ§ λ°©λ²
β
- νν λμ
>>> a, b = ('python', 'life')
>>> (a, b) = 'python', 'life'
- 리μ€νΈλ‘ λ³μ λ§λ€κΈ°
>>> [a, b] = ['python', 'life']
- μ¬λ¬ κ°μ λ³μμ κ°μ κ°μ λμ νκΈ°
>>> a = b = 'python'
- λ λ³μμ κ° λ°κΎΈκΈ°
>>> a = 3
>>> b = 5
>>> a, b = b, a ← aμ bμ κ°μ λ°κΏ
>>> a
5
>>> b
3
'Python' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Python] if문 (0) | 2021.02.11 |
---|---|
[Python] μ°μ΅λ¬Έμ 2 (0) | 2021.02.11 |
[Python] λΆ μλ£ν (0) | 2021.02.10 |
[Python] μ§ν© μλ£ν (0) | 2021.02.10 |
[Python] λμ λ리 μλ£ν (0) | 2021.02.06 |
λκΈ