if๋ฌธ

soo-hyeonยท2021๋…„ 1์›” 30์ผ
0

ํŒŒ์ด์ฌ

๋ชฉ๋ก ๋ณด๊ธฐ
8/15

if๋ฌธ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ

๐Ÿ”‘ ๋‹ค์Œ์€ 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

๐Ÿ”‘ ์กฐ๊ฑด์„ ํŒ๋‹จํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋‹ค๋ฅธ ์—ฐ์‚ฐ์ž๋กœ๋Š” 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๋ฌธ ๋‹ค์Œ โ€˜ํƒ์‹œ๋ฅผ ํƒ€๊ณ  ๊ฐ€๋ผโ€™ ๋ฌธ์žฅ์ด ์ถœ๋ ฅ๋œ๋‹ค.

๐ŸŸก x in s, x not in s

๐Ÿ”‘ ๋” ๋‚˜์•„๊ฐ€ ํŒŒ์ด์ฌ์€ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์‰ฝ๊ฒŒ ๋ณผ ์ˆ˜ ์—†๋Š” ์žฌ๋ฏธ์žˆ๋Š” ์กฐ๊ฑด๋ฌธ์„ ์ œ๊ณตํ•œ๋‹ค.

โ–ท ๋ฐ”๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒƒ๋“ค์ด๋‹ค.

โ–ถ ์˜์–ด ๋‹จ์–ด 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๊ฐ€ ์ˆ˜ํ–‰๋˜๊ณ  ์•„๋ฌด ๊ฒฐ๊ณผ๊ฐ’๋„ ๋ณด์—ฌ ์ฃผ์ง€ ์•Š๋Š”๋‹ค.

๋‹ค์–‘ํ•œ ์กฐ๊ฑด์„ ํŒ๋‹จํ•˜๋Š” elif

๐Ÿ”‘ if์™€ else๋งŒ์œผ๋กœ๋Š” ๋‹ค์–‘ํ•œ ์กฐ๊ฑด์„ ํŒ๋‹จํ•˜๊ธฐ ์–ด๋ ต๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํŒŒ์ด์ฌ์—์„œ๋Š” ๋‹ค์ค‘ ์กฐ๊ฑด ํŒ๋‹จ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” elif๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

pocket = ['paper', 'cellphone']
card = True
if 'money' in pocket:
    print("ํƒ์‹œ๋ฅผ ํƒ€๊ณ ๊ฐ€๋ผ")
elif card:
    print("ํƒ์‹œ๋ฅผ ํƒ€๊ณ ๊ฐ€๋ผ")
else:
    print("๊ฑธ์–ด๊ฐ€๋ผ")

โ–ท elif๋Š” ๊ฐœ์ˆ˜์— ์ œํ•œ ์—†์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

โญ if๋ฌธ ํ•œ ์ค„๋กœ ์ž‘์„ฑํ•˜๊ธฐ

๐Ÿ”‘ ์ˆ˜ํ–‰ํ•  ๋ฌธ์žฅ์ด ํ•œ ์ค„์ด ๊ฒฝ์šฐ ์กฐ๊ธˆ ๋” ๊ฐ„๋žตํ•˜๊ฒŒ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค. 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 ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง“์ธ ๊ฒฝ์šฐ โญ

์กฐ๊ฑด๋ถ€ ํ‘œํ˜„์‹์€ ๊ฐ€๋…์„ฑ์— ์œ ๋ฆฌํ•˜๊ณ  ํ•œ ์ค„๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์–ด ํ™œ์šฉ์„ฑ์ด ์ข‹๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€