โถ if~else์ elif ๊ตฌ๋ฌธ
if ์กฐ๊ฑด๋ฌธ์ ๋ค์ else ๊ตฌ๋ฌธ์ ๋ถ์ฌ์ ์ฌ์ฉํ ์ ์๋ค.
์ด์ฒ๋ผ if ๊ตฌ๋ฌธ ๋ค์ else ๊ตฌ๋ฌธ์ ๋ถ์ธ ๊ฒ์ 'if else ์กฐ๊ฑด๋ฌธ'์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค.
โท else ์กฐ๊ฑด๋ฌธ์ ํ์ฉ
์์ '[03-1] ์กฐ๊ฑด๋ฌธ'์์ ๋ง์ง๋ง์์ ์ค๋ช ํ ์์ ์ฒ๋ผ
์ ๋ฐ๋๋๋ ์ํฉ์์ ๋ ๋ฒ์ด๋ ๋น๊ตํด์ผํ๋ ๊ฒ์ ๋ญ๋น๋ผ๊ณ ํ ์ ์๋ค.
๊ทธ๋์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ else ๊ตฌ๋ฌธ์ด๋ผ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
else ๊ตฌ๋ฌธ์ if ์กฐ๊ฑด๋ฌธ ๋ค์ ์ฌ์ฉํ๋ฉฐ, if ์กฐ๊ฑด๋ฌธ์ ์กฐ๊ฑด์ด ๊ฑฐ์ง์ผ ๋ ์คํ๋๋ ๋ถ๋ถ์ด๋ค.
if ์กฐ๊ฑด:
โกโกโกโก ์กฐ๊ฑด์ด ์ฐธ์ผ ๋ ์คํํ ๋ฌธ์ฅ
else:
โกโกโกโก ์กฐ๊ฑด์ด ๊ฑฐ์ง์ผ ๋ ์คํํ ๋ฌธ์ฅ
์๋ ํ๋ฉด์ '[03-1] ์กฐ๊ฑด๋ฌธ' ๋ง์ง๋ง ์ซ์ ์ฐ์ฐ์ ํตํ ์์ ์ else ๊ตฌ๋ฌธ์ ํ์ฉํ ๊ฒ์ด๋ค.
์กฐ๊ฑด๋ฌธ์ด ์ค๋ก์ง ๋ ๊ฐ์ง๋ก๋ง ๊ตฌ๋ถ๋ ๋,
if else ๊ตฌ๋ฌธ์ ์ฌ์ฉํ๋ฉด ์กฐ๊ฑด ๋น๊ต๋ฅผ ํ ๋ฒ๋ง ํ๋ฏ๋ก
์ด์ ์ ์ฝ๋๋ณด๋ค ๋ ๋ฐฐ ํจ์จ์ ์ด๋ผ๊ณ ํ ์ ์๋ค.
โถ elif ๊ตฌ๋ฌธ
์์ ๊ฐ์ด ๋ฑ ๋ ๊ฐ์ง๋ก๋ง ๊ตฌ๋ถ๋์ง ์๋ ๊ฒฝ์ฐ๋ ์๋ค.
์๋ฅผ ๋ค์ด ์์ ์ ๋ฆฌํ๋ ๊ณ์ ๋ง ํด๋ 4๊ฐ๊ฐ ์์ผ๋ฉฐ, ์์ผ๋ง ํด๋ 7๊ฐ๊ฐ ์๋ค.
๋ฐ๋ผ์ 3๊ฐ ์ด์์ ์กฐ๊ฑด์ ์ฐ๊ฒฐํด์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ ํ์ํ๋ค.
๊ทธ๊ฒ์ด ๋ฐ๋ก elif ๊ตฌ๋ฌธ์ด๋ค.
if ์กฐ๊ฑดA:
โกโกโกโก์กฐ๊ฑดA๊ฐ ์ฐธ์ผ ๋ ์คํํ ๋ฌธ์ฅ
if ์กฐ๊ฑดB:
โกโกโกโก์กฐ๊ฑดB๊ฐ ์ฐธ์ผ ๋ ์คํํ ๋ฌธ์ฅ
if ์กฐ๊ฑดC:
โกโกโกโก์กฐ๊ฑดC๊ฐ ์ฐธ์ผ ๋ ์คํํ ๋ฌธ์ฅ
• • •
else:
โกโกโกโก๋ชจ๋ ์กฐ๊ฑด์ด ๊ฑฐ์ง์ผ ๋ ๋ฌธ์ฅ
๊ทธ๋ผ ์ด๋ฅผ ์ค์ ๋ก ์ ์ฉํ ํ๋ฉด์ ๋ด ์๋ค!
์์ ์ฝ๋๋ฅผ ์์ฑํ ์๊ฐ์ด '1์ 29์ผ'์ด๋ฏ๋ก "ํ์ฌ๋ ๊ฒจ์ธ์ ๋๋ค."๊ฐ ์ถ๋ ฅ๋ ๊ฒ์ด๋ค.
๋ง์ง๋ง ๊ฒจ์ธ์ 12์๊ณผ 1, 2์๋ก ์์ด ๋จ์ด์ ธ ์๊ธฐ ๋๋ฌธ์, else ๊ตฌ๋ฌธ์ ๋ฃ์ด ๊ฐ๋จํ๊ฒ ๋ง๋ค์๋ค.
๐กif ์กฐ๊ฑด๋ฌธ์์ ํจ๊ป ํ์ฉํ ์ ์๋ else, elif ๊ตฌ๋ฌธ์
ํ๋ก๊ทธ๋๋ฐ์์ ์ ๋ง ๋ง์ด ์ฌ์ฉํ๋ฏ๋ก ํ์คํ๊ฒ ๊ธฐ์ตํด๋์!
โถ if ์กฐ๊ฑด๋ฌธ์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ
์ธํฐ๋ท์ ์๋์ ๊ฐ์ ์ ๋จธ๊ฐ ์๋ค.
์กฐ๊ฑด | ์ค๋ช (ํ์ ํ๊ฐ) | ์กฐ๊ฑด | ์ค๋ช (ํ์ ํ๊ฐ) |
4.5 | ์ | 1.75~2.3 | ์ค๋ฝ๋ฌธํ์ ์ ๊ตฌ์ |
4.2~4.5 | ๊ต์๋์ ์ฌ๋ | 1.0~1.75 | ๋ถ๊ฐ์ด์ฒ๋ฏผ |
3.5~4.2 | ํ ์ฒด์ ์ ์ํธ์ | 0.5~1.0 | ์๋ฒ๋ |
2.8~3.5 | ์ผ๋ฐ์ธ | 0~0.5 | ํ๋ํฌํค |
2.3~2.8 | ์ผํ์ ๊ฟ๊พธ๋ ์์๋ฏผ | 0 | ์๋๋ฅผ ์์๊ฐ๋ ํ๋ช ์ ์จ์ |
์ด ์์ ๋ฅผ ํ์ฉํ์ฌ ์กฐ๊ฑด๋ฌธ์ผ๋ก ๊ตฌํํด์ ์ถ๋ ฅํด ๋ณด๋ ค๊ณ ํ๋ค.
์ผ๋จ, ์์์ ์ ์ฌ์ฉํ๋ฏ๋ก ์ ๋ ฅ์ ์ซ์๋ก ๋ณํํ ๋, float( ) ํจ์๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
์์ ๊ฐ์ด ๊ตฌํํ ์ ์์ ๊ฒ์ด๋ค.
๊ทธ๋ฐ๋ฐ, ์ ํํ๋ ๋นํจ์จ์ ์ธ ์กฐ๊ฑด๋ฌธ์ด๋ผ๊ณ ํ ์ ์๋ค.
์ ์ฝ๋๋ฅผ ์ข ๋ ํจ์จ์ ์ผ๋ก ๊ตฌ์ฑํ์ฌ ๊ตฌํํด ๋ณด๋ฉด, ์๋์ ๊ฐ๋ค.
๋ ๊ฐ์ ์ฐจ์ด์ ์ ์ค๋ช ํ์๋ฉด,
if ์กฐ๊ฑด๋ฌธ์ ์์์ ์๋๋ก ํ๋ฅด๊ณ ,
else ๊ตฌ๋ฌธ๊ณผ elif ๊ตฌ๋ฌธ์ ์ด์ ์ ์กฐ๊ฑด์ด ๋ง์ง ์์ ๋ ๋์ด์ค๋ ๋ถ๋ถ์ด๋ค.
๊ทธ๋์ ์์์ ์ด๋ฏธ ์ ์ธ๋ ์กฐ๊ฑด์ ํ ๋ฒ ๋ ๊ฒ์ฌํ ํ์๊ฐ ์๋ค.
์์ ๊ฐ์ด ์กฐ๊ฑด์์ ๋ฐ๊พธ๋ฉด ์ด์ ์ฝ๋๋ณด๋ค ์กฐ๊ฑด ๋น๊ต๋ฅผ ๋ฐ๋ฐ์ ํ์ง ์๊ณ ,
์ฝ๋์ ๊ฐ๋ ์ฑ๋ ์ข ๋ ํฅ์๋๊ธฐ ๋๋ฌธ์ ํ๋ก๊ทธ๋จ์ ํจ์จ์ด ํจ์ฌ ๋์์ง๊ฒ ๋๋ค.
โถ False๋ก ๋ณํ๋๋ ๊ฐ
if ์กฐ๊ฑด๋ฌธ์ ๋งค๊ฐ๋ณ์์ ๋ถ์ด ์๋ ๋ค๋ฅธ ๊ฐ์ด ์ฌ ๋๋ ์๋์ผ๋ก ๋ถ๋ก ๋ณํํด์ ์ฒ๋ฆฌํ๋ค.
๊ทธ๋ผ ์ด๋ค ๊ฐ์ด True๋ก ๋ณํ๋๊ณ , ์ด๋ค ๊ฐ์ด False๋ก ๋ณํ๋๋์ง ์๊ณ ์์ด์ผ ์ฝ๋๋ฅผ ์ดํดํ ์ ์๋ค.
False๋ก ๋ณํ๋๋ ๊ฐ์
None, ์ซ์ 0๊ณผ 0.0, ๋น ์ปจํ ์ด๋(๋น ๋ฌธ์์ด, ๋น ๋ฐ์ดํธ์ด, ๋น ๋ฆฌ์คํธ, ๋น ํํ, ๋น ๋์ ๋๋ฆฌ ๋ฑ)์ด๋ค.
์ด ์ธ์๋ ๋ชจ๋ True๋ก ๋ณํ๋๋ค.
โถ pass ํค์๋
ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค ๋ณด๋ฉด ํ๋ก๊ทธ๋๋ฐ์ ์ ์ฒด ๊ณจ๊ฒฉ์ ์ผ๋จ ์ก์ ๋๊ณ ,
๋ด๋ถ์์ ์ฒ๋ฆฌํ ๋ด์ฉ์ ์ฐจ๊ทผ์ฐจ๊ทผ ์๊ฐํ๋ฉฐ ๋ง๋ค๊ฒ ๋ค๋ ์๋๋ก ์๋์ ๊ฐ์ด ์ฝ๋ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
(์ฌ๊ธฐ์ ๊ณจ๊ฒฉ์ ์ผ๋ฐ์ ์ผ๋ก ์กฐ๊ฑด๋ฌธ, ๋ฐ๋ณต๋ฌธ, ํจ์, ํด๋์ค ๋ฑ์ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์ ์๋ฏธ)
๋ค๋ฅธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์๋ ์์ ๊ฐ์ด ์์ฑํด๋ ์ ์์ ์ผ๋ก ์คํ๋๋ค.
๊ทธ๋ฌ๋, ํ์ด์ฌ์ ๊ฒฝ์ฐ์๋ if ์กฐ๊ฑด๋ฌธ ์ฌ์ด์๋ ๋ฌด์กฐ๊ฑด ๋ค์ฌ์ฐ๊ธฐ 4์นธ์ ๋ฃ๊ณ ์ฝ๋๋ฅผ ์์ฑํด์ผ๋ง ๊ตฌ๋ฌธ์ด ์ฑ๋ฆฝ๋๊ธฐ ๋๋ฌธ์
์ด๋ค ๋ด์ฉ์ด๋ผ๋ ๋ฃ์ด ์ค์ผ ํ๋ค.
ํ์ด์ฌ์์๋ ์ด๋ฌํ ๊ฒฝ์ฐ๋ฅผ ์ํด์ pass๋ผ๋ ํค์๋๋ฅผ ์ ๊ณตํ๊ณ ์๋ค.
์์ ํ๋ฉด์ ๋ณด๋ฉด if ์กฐ๊ฑด๋ฌธ ์ฌ์ด์ pass๋ฅผ ํ์ฉํ๋, ์ ์์ ์ผ๋ก ์ฝ๋๊ฐ ์คํ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์์ผ๋ก pass ํค์๋๋ฅผ ๋ง๋๋ฉด,
'์ง์ง๋ก ์๋ฌด๊ฒ๋ ์ํจ' ๋๋ '๊ณง ๊ฐ๋ฐํ๊ฒ ์'์ด๋ผ๋ ์๋ฏธ๋ก ์๊ฐํ๋ฉด ๋๋ค.
โ raise NotImplementedError
pass ํค์๋๋ฅผ ์ ๋ ฅํด ๋จ์ด๋ ๋ด์ผ์ด๋ฉด ์์ด๋ฒ๋ฆฌ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
๋์ค์ ์ถ๊ฐ์ ์ผ๋ก ์ ๋ฆฌํ๊ฒ ์ง๋ง, raise ํค์๋์ ๋ฏธ๊ตฌํ ์ํ๋ฅผ ํํํ๋ NotImplementedError๋ฅผ ์กฐํฉํด์
raise NotImplementedError๋ฅผ ์ฌ์ฉํ๋ฉด "์์ง ๊ตฌํํ์ง ์๋ ๋ถ๋ถ์ด์์!"๋ผ๋ ์ค๋ฅ๋ฅผ ๊ฐ์ ๋ก ๋ฐ์์ํฌ ์ ์๋ค.
๋ฐ๋ก ์์ ์๋ ์์ ์์ ์ด๋ฅผ ํ์ฉํด๋ณด๋ฉด,
์ ์ ์ ๋ ฅ> 10 โ ํ์๋๋,
์์ ๊ฐ์ NotImplementedError๋ผ๋ ์ค๋ฅ๋ฅผ ๋ฐ์๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
๋ฐ๋ผ์ ์ด๋ฅผ ํ์ฉํ๋ฉด '์ด๊ฑฐ ์ด์ ๋ด๊ฐ ๊ตฌํ์ ์ ํ๊ตฌ๋'๋ผ๊ณ ์ธ์งํ ์ ์๊ฒ ๋๋ค.
_Next
๋ฐ๋ณต๋ฌธ
(์ฐธ๊ณ )ํผ์ ๊ณต๋ถํ๋ ํ์ด์ฌ_ํ๋น๋ฏธ๋์ด
'ํผ๊ณตํ(python)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[04-2] ๋์ ๋๋ฆฌ์ ๋ฐ๋ณต๋ฌธ (0) | 2024.02.14 |
---|---|
[04-1] ๋ฆฌ์คํธ์ ๋ฐ๋ณต๋ฌธ (2) | 2024.01.30 |
[03-1] ์กฐ๊ฑด๋ฌธ_๋ถ ์๋ฃํ๊ณผ if ์กฐ๊ฑด๋ฌธ (0) | 2024.01.29 |
[02-4] ์ซ์์ ๋ฌธ์์ด์ ๋ค์ํ ๊ธฐ๋ฅ_์ถ๊ฐ (4) | 2024.01.26 |
[02-4] ์ซ์์ ๋ฌธ์์ด์ ๋ค์ํ ๊ธฐ๋ฅ (2) | 2024.01.26 |