[Python] 6๊ฐ - ์ ํ ๊ตฌ์กฐ
2. ๋ ผ๋ฆฌ์ฐ์ฐ์
3. ์ ํ ๊ตฌ์กฐ์ ํ์ฅ
1. ์ ํ ๊ตฌ์กฐ
(1) ์ ํ ๊ตฌ์กฐ์ ๊ฐ๋
- ํน์ ์์ญ ๋ด์ ๋ช ๋ น๋ฌธ์ ๋ํ ์คํ ์ฌ๋ถ๋ฅผ ํ๋จ์ ๋ฐ๋ผ ๊ฒฐ์ ํ๋ ๊ตฌ์กฐ๋ฅผ ์๋ฏธํ๋ค.
- ์คํ ์ฌ๋ถ๋ ์กฐ๊ฑด์ ๋ฐ๋ผ ๊ฒฐ์ ์ด ๋๋ค. ( ํ์ด์ฌ์์ if๋ฌธ์ ์๋ฏธํ๋ค. )
(2) ์ ํ ๊ตฌ์กฐ์ ๊ตฌ๋ฌธํ์
a = 1
if a < 2 : print("success") # a < 2 : true ์ฐธ์ด๊ธฐ ๋๋ฌธ์ ํด๋น ๋ช
๋ น๋ฌธ์ด ์คํ ๋จ.
- ๋ค์ฌ์ฐ๊ธฐ๋ ์ฝ๋ ๋ธ๋ก์ ํํํจ.
- ํน์ ๋์์ ์ํํ๋ ํ ๋ผ์ธ ์ด์์ ๋ช ๋ น๋ฌธ์ ์งํฉ
- ์คํ์ด์ค 4์นธ ๊ถ๊ณ (PEP-8)
- if ์ : ์ฌ์ด์๋ ๋ ผ๋ฆฌํ(boolean) ํ์ ์ ๋ง๊ฒ true & false๋ก ์ฐธ์ผ ๊ฒฝ์ฐ์ ๊ฑฐ์ง์ผ ๊ฒฝ์ฐ์ ๋ช ๋ น๋ฌธ์ ์คํํ ์ ์์.
(3) ๋ถ๋ฆฌ์ธ์
- ๋น๊ต์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ฒฐ๊ณผ๊ฐ ๋ถ๋ฆฌ์ธ ํ์ ์ผ๋ก ์์ฑ๋๋ ํํ์์ ์๋ฏธํจ.
- ์ฝ๊ฒ ๋งํด, true ์ false ์ฐธ๊ณผ ๊ฑฐ์ง์ ๋ํ๋ด๋ ๋ฐ์ดํฐ ํ์์ ์๋ฏธํ๋ค.
[1] ๋น๊ต์ฐ์ฐ์
[2] ๋ถ๋ฆฌ์ธ ํ์
- ๋ ผ๋ฆฌ๊ฐ์ด ์ฐธ(True)๊ณผ ๊ฑฐ์ง(False)์ ๊ฐ๋ง ํํํ ์ ์๋ ๋ฐ์ดํฐ ํ์ ์ ์๋ฏธํ๋ค.
- True ๋๋ False ์์ฝ์ด๋ฅผ ์ฌ์ฉํ์ฌ ํํ๋ ๊ฐ๋ฅํจ.
- ๋น๊ต ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ ํํ์์ ๊ฒฐ๊ณผ๋ก ์์ฑ
2. ๋ ผ๋ฆฌ์ฐ์ฐ์
(1) ๋ ผ๋ฆฌ ์ฐ์ฐ์์ ๊ฐ๋
- ์ฐธ, ๊ฑฐ์ง์ ๊ตฌ๋ณํ ์ ์๋ ๋ช ์ ๋ฅผ ๋์์ผ๋ก ๋ช ์ ์ ์งํฉ์ ์ํด ๊ณ ์ํ ์ฐ์ฐ์๋ฅผ ์๋ฏธํ๋ค.
- ์ฝ๊ฐ ๋งํด, ๋ ๊ฐ์ ๋ ผ๋ฆฌ๊ฐ(๋ถ๋ฆฌ์ธ์)์ ์ฐ์ฐํ์ฌ ์ฐธ ๋๋ ๊ฑฐ์ง์ ๊ฒฐ๊ณผ๋ก ์ป๋ ์ฐ์ฐ์๋ฅผ ๋งํ๋ค.
- ๋ ๊ฐ์ ํผ์ฐ์ฐ์๋ฅผ ๊ฐ๋ ์ดํญ ์ฐ์ฐ์
- ํ์ด์ฌ์์๋ and(๋ ผ๋ฆฌ๊ณฑ), or(๋ ผ๋ฆฌํฉ), not(๋ ผ๋ฆฌ๋ถ์ ) ์ฐ์ฐ์๋ฅผ ์ด์ฉํ๋ค.
[1] and ์ฐ์ฐ์
- ๋ ๋ ผ๋ฆฌ๊ฐ์ด ๋ชจ๋ True ์ผ ๋ True์ด๊ณ , ์ด๋ ํ๋ False ์ผ ๊ฒฝ์ฐ False๋ฅผ ๋ฐํํ๋ค.
[2] or ์ฐ์ฐ์
- ๋ ๋ ผ๋ฆฌ๊ฐ ์ค ์ด๋ ํ๋๋ผ๋ True ์ผ ๊ฒฝ์ฐ True์ด๊ณ , ๋ ผ๋ฆฌ๊ฐ ๋ชจ๋ False ์ผ ๊ฒฝ์ฐ์๋ง False๋ฅผ ๋ฐํํ๋ค.
[3] not ์ฐ์ฐ์
- ๋จํญ ์ฐ์ฐ์๋ก ๋ ผ๋ฆฌ๊ฐ์ ๋ฐ์ ํ์ฌ False๋ True๋ก, True๋ False๋ก ๋ฐํ์ ํด์ค๋ค.
(2) ๋จ๋ฝํ๊ฐ
- ์ฒซ ๋ฒ์งธ ๋ ผ๋ฆฌ๊ฐ ๋ง์ผ๋ก ์ ์ฒด ์ฐ์ฐ ๊ฒฐ๊ณผ๊ฐ ํ๋ณ ๊ฐ๋ฅํ ๋ ๋ ๋ฒ์งธ ๋ ผ๋ฆฌ๊ฐ์ ํ์ธ(ํ๊ฐ)ํ์ง ์๋ ๊ธฐ๋ฒ์ ์๋ฏธํ๋ค.
- and ์ฐ์ฐ์์์ ์์ด False์ด๋ฉด and ๋ค๋ ๋ณผ ํ์๋ ์์
- or ์ฐ์ฐ์์์ ์์ด True์ด๋ฉด or ๋ค๋ ๋ณผ ํ์๋ ์์
- ์ด๋ฌํ ๊ณผ์ ์ ์๋ต์ผ๋ก ํ๋ก๊ทธ๋จ์ ์๋๋ฅผ ๋์ผ ์ ์์.
3. ์ ํ ๊ตฌ์กฐ์ ํ์ฅ
(1) fi ์์ฝ์ด
- if ์์ฝ์ด๋ ์ฝ๋์ ์กฐ๊ฑด์ ๋ฃ๊ธฐ ์ํ ํ์ด์ฌ์์ ์ ๊ณต์ ํด์ฃผ๋ ํค์๋์ด๋ค.
- if ๋ค์ ๋ถ๋ฆฌ์ธ ํ์ ์ ๋ฐ์ดํฐ์ ๋ฐ๋ผ ๋ช ๋ น๋ฌธ์ด ์คํ๋๊ฑฐ๋ ์คํ๋์ง ์๊ฒ ๋ง๋ค ์ ์์.
a = 1
if a < 2: # ๊ฒฐ๊ณผ๋ true
print("success") # true ์ฐธ์ด๊ธฐ ๋๋ฌธ์ ํด๋น ๋ช
๋ น๋ฌธ์ด ์คํ ๋จ.
(2) else ์์ฝ์ด - ์ด๋ถ ์ ํ ๊ตฌ์กฐ์ ๊ตฌ๋ฌธํ์
- else ์์ฝ์ด๋ if๋ฅผ ํตํด ์ฒซ ๋ฒ์งธ ๋ช
๋ น์ด ์คํ๋์ง ์์ ๊ฒฝ์ฐ ๋ฐ๋์ ์คํ์ด ๋์ด์ผ ํ ๋ช
๋ น๋ฌธ์ ๋ฃ์ ์ ์๋ค.
a = 3
if a < 2: # false ๊ฒฐ๊ณผ
print("success")
else:
print("failure") # ํด๋น ๊ตฌ๋ฌธ์ด ์คํ๋จ 2๋ณด๋ค 3์ด ํฌ๊ธฐ ๋๋ฌธ์
(3) elif ์์ฝ์ด - ๋ค๋ถ ์ ํ ๊ตฌ์กฐ์ ๊ตฌ๋ฌธํ์
- elif ์์ฝ์ด๋ ์กฐ๊ฑด์ ์ฌ๋ฌ ๊ฐ ์ฃผ๊ธฐ ์ํด์ ์ฌ์ฉํ๋ ํค์๋ ์ด๋ค. ( else if ์ ์ฝ์์ )
a = 100
if a < 2: # true ๊ฒฝ์ฐ ์๋ ๋ช
๋ น๋ฌธ ์คํ
print("success")
elif a < 3: # true ๊ฒฝ์ฐ ์๋ ๋ช
๋ น๋ฌธ ์คํ
print("success")
elif a < 99: # true ๊ฒฝ์ฐ ์๋ ๋ช
๋ น๋ฌธ ์คํ
print("success")
else : # ๋ชจ๋๊ฐ ์๋๋ผ๋ฉด else ๋ช
๋ น๋ฌธ ์คํ
print("failure")
- ์์ ์ฝ๋๋ฅผ ๋ณด๋ฉด, if ์์ true๊ฐ ์๋ ๊ฒฝ์ฐ ๋ค์ elif ๋ฅผ ์คํํ๋ฉฐ, elif ์กฐ๊ฑด๋ฌธ์ด false๋ผ๋ฉด ๊ณ์ํด์ ๋ค์์ผ๋ก ๋์ด๊ฐ๊ฒ ๋๋ค.