์๋ฐ์คํฌ๋ฆฝํธ์์ == ๊ณผ ===์ ์ฐจ์ด๋ฅผ ๊ณต๋ถํ๋ค๊ฐ ํ์ด์ฌ์ is ์ ==๊ฐ ์๋๊ฑธ ์์๋๋ฐ ์์ธํ๊ฒ ๊ณต๋ถํด๋ณด์๋ค.
๋จผ์ ์ฝ๊ฒ ๋ณด๋ฉด is๋ ๊ฐ์ ์ฃผ์์ ์๋์ง, ==์ ๋ชจ์์๊ฐ ๊ฐ์์ง ํ์ธํ๋ ๊ฒ์ด๋ค.
์์ ์ฌ์ง์ผ๋ก ์๋ฅผ ๋ค๋ฉด ==์ ๋์ค์ด์ฆ๋ค๋ฒ๋ ๋ฐํ์ด๋ฉด True๋ฅผ ๋ฐํํ๊ณ , ๊ฐ์ ํฐ์ ์ธ ๊ฐ ์๋๋ผ๋ฉด False๋ฅผ ๋ฐํํ๋ค.
ํ์ง๋ง is๋ ์ด ํฐ์ ์ธ ์ ํ๋๊ณณ์ด ๊ฐ์์ง๋ ๊ฒ์ฌํ๋ค.
๋ฌด์ ์ฌ์ ๋์ค์ด์ฆ๋ค๋ฒ๋ํฐ์ ์ธ ์ ์ฟ ํก์ ๋์ค์ด์ฆ๋ค๋ฒ๋ํฐ์ ์ธ ๋ ๋ค๋ฅธ๊ฒ์ด๋ค.
์ด๋ฅผ ์ฝ๋๋ก ๋ฐ๊ฟ์ ์ค๋ช ์ ์กฐ๊ธ๋ ํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
coupang_t_shirt = 'this is never that'
musinsa_t_shirt = 'this is never that'
print(coupang_t_shirt is musinsa_t_shirt) #False
print(coupang_t_shirt == musinsa_t_shirt) #True
is๋ ์ฃผ์๊ฐ์ด ๊ฐ์์ผ ํ๊ณ , ==์ ๊ฐ์ํฐ์ ์ธ ์ด๊ธฐ๋ง ํ๋ฉด ๋๋ค๋ ๋ป์ด๋ค.
๊ทธ๋ฐ๋ฐ ์ฌ๊ธฐ์ ๊ทธ๋ฌ๋ฉด ๋ณ์๊ฐ ๋ค๋ฅด๋ฉด ์ฃผ์๊ฐ์ด ๋ค ๋ค๋ฅธ๊ฐ? ํ๊ณ ํ์ธํด๋ดค๋๋ ๊ทธ๊ฑด ์๋์๋ค.
์ซ์๋ ๊ฐ์ ๊ฐ์ด๋ฉด ๊ฐ์ ์ฃผ์๋ฅผ ๊ณต์ ํ๋ค.
a = 1
b = 1
print(id(a), id(b))
# 140430296271152 140430296271152
ํ์ด์ฌ ๋ณ์๋ ์์์ ๊ฐ์ ์ซ์์ด๋ฉด ๊ฐ์ ์ฃผ์๊ฐ์ ๊ณต์ ํ๋ค.
ํ์ง๋ง ๋ intํ์ ๊ฐ์ง๋ง floatํ์ ๋ค๋ฅด๋ค.
a = 1.2
b = 1.2
c = 1
d = 1
print(id(a), id(b), id(a)==id(b))
print(id(c), id(d), id(c)==id(d))
# 140429029883216 140429029882256 False
# 140430296271152 140430296271152 True
๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ๊ฒ ํด๋ณด๋ค๊ฐ ๋ฌธ์์ด๋ ๋์ด์ฐ๊ธฐ๊ฐ ์์ผ๋ฉด ๋ค๋ฅธ ์ฃผ์๊ฐ์ ํ ๋นํ๊ณ ,
๋์ด์ฐ๊ธฐ๊ฐ ์๋ค๋ฉด ๊ฐ์ ์ฃผ์๊ฐ์ ํ ๋นํ๋ค.
a ='1111'
b ='1111'
print(id(a), id(b), id(a)==id(b))
a ='11 11'
b ='11 11'
print(id(a), id(b), id(a)==id(b))
# 140429029926512 140429029926512 True
# 140429029928432 140429029928560 False
ํ์ด์ฌ์์ ๋์ด์ฐ๊ธฐ๊ฐ ์๋ ๋ฌธ์์ด ๋ณ์๋ ๋ค๋ฅธ ์ฃผ์๊ฐ์ ๊ฐ์ง๋ ์ด์ ๋
๋ฌธ์์ด ๋ฆฌํฐ๋ด์ด ๋ถ๋ณ(immutable)ํ๊ธฐ ๋๋ฌธ์ด๋ค.
ํ์ด์ฌ์์ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ํ ๋ฒ ์์ฑ๋๋ฉด ๋ณ๊ฒฝํ ์ ์๋ค.
๋ฐ๋ผ์ ๋์ผํ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ์ฌ์ฉํ๋ ๋ ๊ฐ์ ๋ฌธ์์ด ๋ณ์๋ ํญ์ ๊ฐ์ ์ฃผ์๋ฅผ ๊ฐ์ง๊ฒ ๋๋ค.
์๋ฅผ ๋ค์ด "1111" ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ์ฌ์ฉํ๋ ๋ ๊ฐ์ ๋ณ์๋ ํญ์ ๊ฐ์ ์ฃผ์๋ฅผ ๊ฐ์ง๊ฒ ๋์ง๋ง,
"11 11"์ ๋ค๋ฅธ ์ฃผ์๊ฐ์ด ๋๋ค.
์ฆ, ๋์ด์ฐ๊ธฐ๊ฐ ์๋ ๋ฌธ์์ด ๋ณ์๋ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ์ฌ์ฉํ์ง ์๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ์ฃผ์๊ฐ์ ๊ฐ์ง๊ฒ ๋๋ค.
๋์ด์ฐ๊ธฐ๊ฐ ์๋ ๋ฌธ์์ด ๋ณ์๋ ์๋ก์ด ๋ฌธ์์ด ๊ฐ์ฒด๊ฐ ์์ฑ๋์ด ๊ทธ ์์ ๋ฌธ์์ด์ด ๋ณต์ฌ๋๊ธฐ ๋๋ฌธ์ด๋ค.
์๊ฐ๋ณด๋ค ํ์ด์ฌ ๊ตฌ์กฐ๋ฅผ ์๊ฒ ๋์ด์ ๋ป๊น์ ์๊ฐ์ด์๋ค.
'๐๐ฎ๐ฉ๐๐ค๐ฃ > ๐๐ฉ๐ช๐๐ฎ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์์ธ์ฒ๋ฆฌ (0) | 2023.06.29 |
---|---|
ํ์ด์ฌ์ผ๋ก ์ด๋ฏธ์ง ํ์ฅ์ ๋ณ๊ฒฝํ๊ธฐ (0) | 2023.04.05 |
ํ๋ก๊ทธ๋๋จธ์ค '์ ๋ฌธ' Lv.0 ํ์ด ์๋ฃ (0) | 2023.02.18 |
ํ์ด์ฌ := ์ฐ์ฐ์์ dict()์ ๋ํด์ (0) | 2023.02.15 |
๋๊ธ