Codelog
Mutable๊ณผ Immutable ๋ณธ๋ฌธ
๐ Mutable : ์์ ๊ฐ๋ฅํ ๊ฐ์ฒด
> list, dict
๐ Immutable : ์์ ๋ถ๊ฐ๋ฅํ ๊ฐ์ฒด
> int, float, str, tuple
a = 'python1'
id(a)
>>> 2569647077488
a = 'python2'
id(a)
>>> 2569647077360
- 'python1' ๋ผ๋ ๋ฌธ์์ด ๊ฐ์ฒด๊ฐ ๋ฉ๋ชจ๋ฆฌ์ 2569647077488 ๋ฒ์ง์ ํ ๋น๋๊ณ ํด๋น ๊ฐ์ฒด๋ฅผ a๋ผ๋ ๋ณ์๊ฐ ๋ฐ์ธ๋ฉํ๋ค.
- 'python2' ๋ผ๋ ๋ฌธ์์ด ๊ฐ์ฒด๊ฐ ๋ฉ๋ชจ๋ฆฌ์ 2569647077360 ๋ฒ์ง์ ํ ๋น๋๊ณ ํด๋น ๊ฐ์ฒด๋ฅผ a๋ผ๋ ๋ณ์๊ฐ ๋ฐ์ธ๋ฉํ๋ค.
- 'python1' ๋ผ๋ ๋ฌธ์์ด ๊ฐ์ฒด๋ ์๋ฌด๋ ์์ ์ ์ฐธ์กฐํ์ง ์๊ธฐ ๋๋ฌธ์ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ ์ํด ์๋์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์์ ์๋ฉธ๋๋ค.
๋ฌธ์์ด ๊ฐ์ฒด๋ ์์ ๋ถ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ๊ธฐ์กด ๊ฐ์ฒด๋ ํด๋น ์ฃผ์์ ๊ทธ๋๋ก ์๊ณ
์๋ก์ด ๋ฌธ์์ด ๊ฐ์ฒด๊ฐ ์์ฑ๋๊ฒ ๋๋ค. (์๋ก์ด ์ฃผ์์ ํ ๋น)
๋ณ์๊ฐ ์๋ก ์์ฑ๋ ๋ฌธ์์ด ๊ฐ์ฒด๋ฅผ ๋ฐ์ธ๋ฉํ๊ฒ ๋๋ฉด ๊ธฐ์กด ๋ฌธ์์ด ๊ฐ์ฒด๋ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ ์ํด ์๋์ผ๋ก ์๋ฉธ๋๋ค.
a = ["python2", "python3"]
id(a)
>>> 4398197808
a.append("python4")
a
>>> ['python2', 'python3', 'python4']
id(a)
>>> 4398197808
id(a[0])
>>> 4399272816
id(a[1])
>>> 4399272880
id(a[2])
>>> 4399272944
a๋ผ๋ ๋ณ์๋ ๋ฆฌ์คํธ ๊ฐ์ฒด๋ฅผ ๋ฐ์ธ๋ฉํ๋ค. ๋ฆฌ์คํธ์ ๊ฐ์ ์ถ๊ฐํด๋ ๋ฆฌ์คํธ ๊ฐ์ฒด์ ์์ ์ฃผ์ ๊ฐ์ ๋ณํ์ง ์๋๋ค.
๋ฆฌ์คํธ ๊ฐ์ฒด๋ [0]๋ฒ [1]๋ฒ, [2]๋ฒ์ด ๋ฆฌ์คํธ์ ์์์ธ ๋ฌธ์์ด ๊ฐ์ฒด๋ฅผ ๋ค์ ๋ฐ์ธ๋ฉํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ๋๋ค.
๋ฐ๋ผ์ ๋ฆฌ์คํธ์ ์์๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ญ์ ํด๋ ๋ฆฌ์คํธ ๊ฐ์ฒด์ ์์ ์ฃผ์๋ ๋ณํ์ง ์๋๋ค.
03) Immutable๊ณผ Mutable
[TOC] ## ํ์ด์ฌ ๋ฆฌ์คํธ๋ฅผ ๊ทธ๋ฆผ์ผ๋ก ํํํ๊ธฐ ๋ค์ ์ฝ๋๋ฅผ ๋ณด๊ณ ๋ฉ๋ชจ๋ฆฌ์ ์ํ๋ฅผ ์ฐ์ ๊ทธ๋ ค๋ด ์๋ค. ``` >>> a = hello >>> b = [hell ...
wikidocs.net