๐ ๋ค์์ if์ else๋ฅผ ์ฌ์ฉํ ์กฐ๊ฑด๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ์ด๋ค.
if ์กฐ๊ฑด๋ฌธ :
์ํํ ๋ฌธ์ฅ1
์ํํ ๋ฌธ์ฅ2
...
else :
์ํํ ๋ฌธ์ฅA
์ํํ ๋ฌธ์ฅB
...
โถ ์กฐ๊ฑด๋ฌธ์ ํ ์คํธํด์ ์ฐธ์ด๋ฉด if๋ฌธ ๋ฐ๋ก ๋ค์ ๋ฌธ์ฅ(if ๋ธ๋ก)๋ค์ ์ํํ๊ณ , ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง์ด๋ฉด else๋ฌธ ๋ค์ ๋ฌธ์ฅ(else ๋ธ๋ก)๋ค์ ์ํํ๊ฒ ๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก else๋ฌธ์ if๋ฌธ ์์ด ๋ ๋ฆฝ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.
โท if๋ฌธ์ ๋ง๋ค ๋๋ if ์กฐ๊ฑด๋ฌธ: ๋ฐ๋ก ์๋ ๋ฌธ์ฅ๋ถํฐ if๋ฌธ์ ์ํ๋ ๋ชจ๋ ๋ฌธ์ฅ์ ๋ค์ฌ์ฐ๊ธฐ(indentation)๋ฅผ ํด์ฃผ์ด์ผ ํ๋ค. ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ํ์ง ์์ ๊ฒฝ์ฐ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค.
if ์กฐ๊ฑด๋ฌธ :
์ํํ ๋ฌธ์ฅ1
์ํํ ๋ฌธ์ฅ2
์ํํ ๋ฌธ์ฅ3
โถ if ์กฐ๊ฑด๋ฌธ ๋ค์๋ ๋ฐ๋์ ์ฝ๋ก (:)์ด ๋ถ๋๋ค. ์ด๋ค ํน๋ณํ ์๋ฏธ๊ฐ ์๋ค๊ธฐ๋ณด๋ค๋ ํ์ด์ฌ์ ๋ฌธ๋ฒ ๊ตฌ์กฐ์ด๋ค. while์ด๋ for, def, class๋ฌธ์๋ ์ญ์ ๋ฌธ์ฅ์ ๋์ ์ฝ๋ก (:)์ด ํญ์ ๋ค์ด๊ฐ๋ค. ์ด๋ณด์๋ค์ ์ด ์ฝ๋ก (:)์ ๋น ๋จ๋ฆฌ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ผ๋ ํนํ ์ฃผ์ํ์.
๐ if ์กฐ๊ฑด๋ฌธ์์ '์กฐ๊ฑด๋ฌธ'์ด๋ ์ฐธ๊ณผ ๊ฑฐ์ง์ ํ๋จํ๋ ๋ฌธ์ฅ์ ๋งํ๋ค.
โท ๋ค์์ ์์ ์์ ์กฐ๊ฑด๋ฌธ์ money๊ฐ ๋๋ค.
money = True
if money :
โถ money๋ True์ด๊ธฐ ๋๋ฌธ์ ์กฐ๊ฑด์ด ์ฐธ์ด ๋์ด if๋ฌธ ๋ค์ ๋ฌธ์ฅ์ ์ํํ๋ค.
์์ )
money = 2000
if money >= 3000:
print("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ")
else:
print("๊ฑธ์ด๊ฐ๋ผ")
โท money >= 3000 ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง์ด ๋๊ธฐ ๋๋ฌธ์ else๋ฌธ ๋ค์ ๋ฌธ์ฅ์ ์ํํ๊ฒ ๋๋ค.
๐ ์กฐ๊ฑด์ ํ๋จํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋ค๋ฅธ ์ฐ์ฐ์๋ก๋ and, or, not์ด ์๋ค. ๊ฐ๊ฐ์ ์ฐ์ฐ์๋ ๋ค์์ฒ๋ผ ๋์ํ๋ค.
์์ ) "๋์ด 3000์ ์ด์ ์๊ฑฐ๋ ์นด๋๊ฐ ์๋ค๋ฉด ํ์๋ฅผ ํ๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ฑธ์ด ๊ฐ๋ผ."
money = 2000
card = True
if money >= 3000 or card:
print("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ")
else:
print("๊ฑธ์ด๊ฐ๋ผ")
โถ money๋ 2000์ด์ง๋ง card๊ฐ True์ด๊ธฐ ๋๋ฌธ์ money >= 3000 or card ์กฐ๊ฑด๋ฌธ์ด ์ฐธ์ด ๋๋ค. ๋ฐ๋ผ์ if๋ฌธ ๋ค์ โํ์๋ฅผ ํ๊ณ ๊ฐ๋ผโ ๋ฌธ์ฅ์ด ์ถ๋ ฅ๋๋ค.
๐ ๋ ๋์๊ฐ ํ์ด์ฌ์ ๋ค๋ฅธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์ฝ๊ฒ ๋ณผ ์ ์๋ ์ฌ๋ฏธ์๋ ์กฐ๊ฑด๋ฌธ์ ์ ๊ณตํ๋ค.
โท ๋ฐ๋ก ๋ค์๊ณผ ๊ฐ์ ๊ฒ๋ค์ด๋ค.
โถ ์์ด ๋จ์ด in์ ๋ป์ด "~์์"๋ผ๋ ๊ฒ์ ์๊ฐํด ๋ณด๋ฉด ๋ค์ ์๊ฐ ์ฝ๊ฒ ์ดํด๋ ๊ฒ์ด๋ค.
์์ ) "๋ง์ฝ ์ฃผ๋จธ๋์ ๋์ด ์์ผ๋ฉด ํ์๋ฅผ ํ๊ณ , ์์ผ๋ฉด ๊ฑธ์ด ๊ฐ๋ผ."
pocket = ['paper', 'cellphone', 'money']
if 'money' in pocket:
print("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ")
else:
print("๊ฑธ์ด๊ฐ๋ผ")
โท ['paper', 'cellphone', 'money'] ๋ฆฌ์คํธ ์์ 'money'๊ฐ ์์ผ๋ฏ๋ก 'money' in pocket์ ์ฐธ์ด ๋๋ค. ๋ฐ๋ผ์ if๋ฌธ ๋ค์ ๋ฌธ์ฅ์ด ์ํ๋๋ค.
๐ ๊ฐ๋ ์กฐ๊ฑด๋ฌธ์ ์ฐธ, ๊ฑฐ์ง์ ๋ฐ๋ผ ์คํํ ํ๋์ ์ ์ํ ๋, ์๋ฌด๋ฐ ์ผ๋ ํ์ง ์๋๋ก ์ค์ ํ๊ณ ์ถ์ ๋๊ฐ ์๋ค.
์์ ) "์ฃผ๋จธ๋์ ๋์ด ์์ผ๋ฉด ๊ฐ๋งํ ์๊ณ ์ฃผ๋จธ๋์ ๋์ด ์์ผ๋ฉด ์นด๋๋ฅผ ๊บผ๋ด๋ผ."
pocket = ['paper', 'cellphone', 'money']
if 'money' in pocket:
pass
else:
print("์นด๋๋ฅผ ๊บผ๋ด๋ผ")
โถ pocket ๋ฆฌ์คํธ ์์ money ๋ฌธ์์ด์ด ์๊ธฐ ๋๋ฌธ์ if๋ฌธ ๋ค์ ๋ฌธ์ฅ์ธ pass๊ฐ ์ํ๋๊ณ ์๋ฌด ๊ฒฐ๊ณผ๊ฐ๋ ๋ณด์ฌ ์ฃผ์ง ์๋๋ค.
๐ if์ else๋ง์ผ๋ก๋ ๋ค์ํ ์กฐ๊ฑด์ ํ๋จํ๊ธฐ ์ด๋ ต๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํ์ด์ฌ์์๋ ๋ค์ค ์กฐ๊ฑด ํ๋จ์ ๊ฐ๋ฅํ๊ฒ ํ๋ elif๋ฅผ ์ฌ์ฉํ๋ค.
pocket = ['paper', 'cellphone']
card = True
if 'money' in pocket:
print("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ")
elif card:
print("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ")
else:
print("๊ฑธ์ด๊ฐ๋ผ")
โท elif๋ ๊ฐ์์ ์ ํ ์์ด ์ฌ์ฉํ ์ ์๋ค.
๐ ์ํํ ๋ฌธ์ฅ์ด ํ ์ค์ด ๊ฒฝ์ฐ ์กฐ๊ธ ๋ ๊ฐ๋ตํ๊ฒ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ด ์๋ค. if๋ฌธ ๋ค์ ์ํํ ๋ฌธ์ฅ์ ์ฝ๋ก (:) ๋ค์ ๋ฐ๋ก ์ ์ด์ฃผ๋ ๊ฒ์ด๋ค. else๋ฌธ ์ญ์ ๋ง์ฐฌ๊ฐ์ง์ด๋ค.
pocket = ['paper', 'money', 'cellphone']
if 'money' in pocket: pass
else: print("์นด๋๋ฅผ ๊บผ๋ด๋ผ")
๐ ๋ค์๊ณผ ๊ฐ์ ์ฝ๋๋ฅผ ๋ณด์.
if score >= 60:
message = "success"
else:
message = "failure"
โถ ์ ์ฝ๋๋ score๊ฐ 60 ์ด์์ผ ๊ฒฝ์ฐ message์ ๋ฌธ์์ด "success"๋ฅผ, ์๋ ๊ฒฝ์ฐ์๋ "failure"๋ฅผ ๋์ ํ๋ ์ฝ๋์ด๋ค.
โท ํ์ด์ฌ์ ์กฐ๊ฑด๋ถ ํํ์(conditional expression)์ ์ฌ์ฉํ๋ฉด ์ ์ฝ๋๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ๊ฐ๋จํ ํํํ ์ ์๋ค.
message = "success" if score >= 60 else "failure"
๐ ์กฐ๊ฑด๋ถ ํํ์์ ๋ค์๊ณผ ๊ฐ์ด ์ ์ํ๋ค.
โญ ์กฐ๊ฑด๋ฌธ์ด ์ฐธ์ธ ๊ฒฝ์ฐ if ์กฐ๊ฑด๋ฌธ else ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง์ธ ๊ฒฝ์ฐ โญ
์กฐ๊ฑด๋ถ ํํ์์ ๊ฐ๋
์ฑ์ ์ ๋ฆฌํ๊ณ ํ ์ค๋ก ์์ฑํ ์ ์์ด ํ์ฉ์ฑ์ด ์ข๋ค.