๋ชฉ์ฐจ
๋ณ์๋ '๊ฐ์ด ์ ์ฅ๋ ๋ฉ๋ชจ๋ฆฌ์ ์์น์ ์ฃผ์ด์ง ์ด๋ฆ'์ ๋งํ๋ค.
a=[1,2,3]
id(a)
ใ
กใ
กใ
กใ
กใ
กใ
กใ
กใ
ก
1713303723008
์์ ์์๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ๋ํ๋ด๋ ํจ์ id()๋ฅผ ์ด์ฉํ์ฌ ๋ฆฌ์คํธ a์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ์ ๋ํ๋ธ ๊ฒ์ด๋ค.
b=a
id(b)
ใ
กใ
กใ
กใ
กใ
กใ
กใ
กใ
ก
1713303723008
์ ์ฌ๊ธฐ์ b๋ผ๋ ๋ณ์์ a๋ฅผ ํ ๋นํ๋ฉด a์b์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ ์์ ํ ๋์ผํ ๊ฒ์ ์ ์ ์๋ค.
๋ค์ ๋งํด a์ b๊ฐ ๊ฐ๋ฆฌํค๋ ๋์์ด ๋์ผํ๋ค๋ ๊ฒ์ด๋ค.
์์ ๊ทธ๋ฆผ ์ฒ๋ผ ๋ค๋ฅธ ์ด๋ฆ์ ๋ ๋ณ์๊ฐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์๋ฅผ ๊ฐ๋ฆฌํค๋ ์ํฉ์ธ ๊ฒ์ด๋ค!
(์ด๋ฌํ ํ์์ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ ๊ฐ์ฒด์์ ์ผ์ด๋๋ค. list,
set, dictionary ๋ฑ)
a = [1,2,3]
b = a
a[1] = 'a'
b
ใ
กใ
กใ
กใ
กใ
กใ
กใ
กใ
ก
[1, 'a', 3]
a๋ฅผ ์์ ํ๋ฉด b์ญ์ ํจ๊ป ์์ ๋๋ ๊ฒ์ ์ ์ ์๋ค.
๋์ผํ ๋ฆฌ์คํธ๋ฅผ ๊ฐ๋ฆฌํค๊ณ ์๊ธฐ ๋๋ฌธ์ ๋ํ๋๋ ๊ฒฐ๊ณผ๋ฌผ์ด๋ค.
๋ณ์์ ๊ฐ๋ง ๋ณต์ฌํ๋ ๋ฐฉ๋ฒ
1. copy()
copyํจ์๋ฅผ ์ด์ฉํ๋ฉด ๋ณ์์ ๊ฐ๋ง ๋ณต์ฌํ ์ ์๋ค.
a=[1,2,3]
b=a.copy()
a[0]=2
b
ใ
กใ
กใ
กใ
กใ
กใ
กใ
กใ
ก
[1,2,3]
์์ ์์๋ฅผ ํตํด a๋ฅผ ์์ ํด๋ b๊ฐ ๋ณํ์ง ์๋ ๊ฒ์ ์ ์ ์๋ค.
2. [:]
[:]๋ฅผ ์ด์ฉํด๋ copyํจ์์ ๋์ผํ๊ฒ ํ์ฉํ ์ ์๋ค.
a=[1,2,3]
b=a[:]
a[0]=2
b
ใ
กใ
กใ
กใ
กใ
กใ
กใ
กใ
ก
[1,2,3]
'๐ | Python > ํ์ด์ฌ ๋ฌธ๋ฒ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์์ ๋ณต์ฌ์ ๊น์ ๋ณต์ฌ (0) | 2021.09.13 |
---|---|
๋ฎคํฐ๋ธ(mutable)๊ณผ ์ด๋ฎคํฐ๋ธ(immutable) (0) | 2021.09.13 |
while (0) | 2021.09.06 |
for (0) | 2021.09.06 |
if (0) | 2021.09.06 |
๋๊ธ