본문 바로가기
5분 공부

[5분 공부] 조건문 (if)

by 멍선생 2022. 8. 30.
728x90

조건문이란,  주어진 조건이 참이냐 거짓이냐에 따라 다른 명령을 처리하도록 만든 수행문으로 정의할 수 있다.

 

다이어그램으로 보자면 대충 이렇게 생겼다.

학창시절 순서도 배울 때 나왔던 저 마름모 모양의 도형이 바로 조건문이 되는 것이다.

 

지난번 반복문 공부할 때에도 잠시 사용을 했었는데,

while문의 경우 조건문이 True 일 동안에는 계속 작업을 수행했었음을 생각하면 된다.

 

본격적으로 조건문을 공부해보도록 하자.

 

조건문

if 조건부분:

    실행할 코드

 

기본적으로 위의 모양을 따른다.

 

예시로 코드를 작성해 보도록 하자.

a = 1
b = 5

if a < b:
    print("a가 b보다 작다")


if a > b:
    print("a가 b보다 크다")

 

위 코드를 실행하면 a < b (1 < 5) 의 조건이 True 이기 때문에 if문의 실행할 코드를 실행하게 된다.

아래의 a > b (1 > 5) 의 조건은 False 이므로 하단의 print문은 실행하지 않음을 알 수 있다.

서로 상반되는 조건들에 대해서는 어떻게 처리를 해야 할까?

위 코드처럼 if 로 나열하면 코드가 복잡해 질 것이다.

이럴때 else 를 사용하면 된다.

a = 1
b = 5

if a < b:
    print("a가 b보다 작다")
else:
    print("a가 b보다 크다")

 

첫 번째 예시와 같은 결과를 얻었지만, 코드는 조금 더 간결해지고 읽기 편해짐을 알 수 있다.

 

다음으로 조건문을 여러개 사용할 때를 알아보도록 하자.

위 예시에 아래 코드 처럼 같다의 조건을 추가해보자.

else 부분에 if문이 한번 더 들어가 있음을 볼 수 있다.

a = 1
b = 5

if a < b:
    print("a가 b보다 작다")
    
else:
    if a == b:
        print("a와 b가 같다")
        
    else:
        print("a가 b보다 크다")

실행한 결과는 간단하다.

하지만 뭔가 들여쓰기가 많아지고 읽기 힘들어 보인다.

이럴 때 간편하게 쓸 수 있는 것이 if, elif, else 이다.

흔히들 쓰는 Java에서는 if, else if, else  로 알려져 있지만, 파이썬에서는 else if 를 줄여서 elif 로 작성한다.

a = 1
b = 5

if a < b:
    print("a가 b보다 작다")
    
elif a == b:
    print("a와 b가 같다")
        
else:
    print("a가 b보다 크다")

먼저 작성했던 결과와 동일한 결과를 얻을 수 있지만,

들여쓰기가 적어져서 코드를 읽기 편해지고, 길이도 짧아짐을 알 수 있다.

 

이렇게 조건문을 적절히 사용하면 복잡한 로직을 조금 더 깔끔하고 가독성 있게 작성할 수 있다.

실제로 업무를 하면서도 이 조건문은 수시로 쓰기 때문에 기본적으로 알아두면 좋을 것 같다.

"조건" 부분을 어떻게 잘 만드냐에 따라 조건문을 잘 만들 수 있기 때문에, 여러번 연습을 하면 좋을 것 같다.

 

 

TIP. 조건문의 모양을 잘 기억하도록 하자. (elif 와 else 는 필수는 아니다!)

if 조건1:

    조건1 을 만족할 때

elif 조건2:

    조건2 를 만족할 때 

else:

    위 조건이 모두 만족하지 않을 때

 

728x90
반응형

댓글