본문 바로가기
Python

[Python][기초] 제어문 - 조건문 (if, elif, else)

by codingbird1234 2025. 5. 2.

안녕하세요, codingbird입니다.

지난 시간까지 파이썬의 정말 기본적인 내용과 주요 자료형들에 대해서 알아보았습니다.

이번 시간부터는 제어문에 대해 알아보겠습니다.

 


제어문이란?

파이썬에서 제어문이란, 프로그램의 실행 흐름을 제어하는 코드를 말합니다.

프로그램명령어들의 집합이죠?

기본적으로 프로그램은 순서에 따라 차례대로 실행됩니다.

그러나 제어문을 사용하면, 상황에 따라 다른 명령을 수행하게 할 수도 있고, 같거나 비슷한 명령을 여러 번 반복시킬 수도 있습니다.

 

제어문에 크게 두 가지 종류가 있습니다.

바로 조건문반복문입니다.

오늘은 이 중에서 조건문에 대해 알아보겠습니다.

 


조건문

조건문이란, 주어진 조건에 따라 어떤 코드를 실행하거나 실행하지 않게 하는 코드입니다.

대표적으로 if, elif, else를 사용합니다.

다음 예시 보겠습니다.

 

if

number = 5

if number == 5:           # number의 값이 5랑 같으면
    print("number is 5")  # "number is 5" 출력

# if [조건식]:
#     조건식이 참일 때 실행할 코드
#     .
#     .
#     .

 

number의 값이 5랑 같으면, "number is 5"를 출력하는 코드입니다.

number에 5가 저장되어있으니 이 프로그램은 "number is 5"를 출력하겠죠?

만약 number에 5가 아니라 다른 숫자가 저장되어있었다면, 프로그램은 아무것도 출력하지 않았을 것입니다.

 

위 코드에서 알 수 있듯이, 조건문 if를 사용할 때는, if 옆에 조건식과 콜론(:)을 씁니다.

그 다음 줄부터 Tab 들여쓰기를 해서, 조건식이 참일 때 실행할 코드를 쓰면 됩니다.

if조건식이 참일 때 자신이 가진 코드를 실행합니다.

 

if, else

if는 else와 사용하여 더 활용할 수 있습니다.

number = 4

if number == 5:               # number의 값이 5랑 같으면
    print("number is 5")      # "number is 5" 출력
else:                         # 그렇지 않으면, 즉 number의 값이 5가 아니면
    print("number is not 5")  # "number is not 5" 출력

# if [조건식]:
#     조건식이 참일 때 실행할 코드
#     .
#     .
# else:
#     조건식이 참이 아닐 때 실행할 코드
#     .
#     .

 

if문 바로 밑에 else를 사용하면, if문의 조건식이 참이 아닐 때 특정 코드를 실행하게 할 수 있습니다.

위 코드에서는 number가 4이기 때문에 조건식이 거짓이 되므로 else의 코드가 실행될 것입니다.

 

if, elif, else

또한 elif를 사용하면 다양한 조건식을 사용할 수 있습니다.

number = 4

if number == 5:               # number의 값이 5랑 같으면
    print("number is 5")      # "number is 5" 출력
elif number == 4:             # number의 값이 4랑 같으면
    print("number is 4")      # "number is 4" 출력
elif number == 3:             # number의 값이 3이랑 같으면
    print("number os 3")      # "number is 3" 출력
else:                         # 그렇지 않으면, 즉 number의 값이 3, 4, 5가 아니면
    print("number is not 3, 4, 5")  # "number is not 3, 4, 5" 출력

# if [조건식1]:
#     조건식1이 참일 때 실행할 코드
#     .
#     .
# elif [조건식2]:
#     앞선 조건식들이 모두 참이 아니고, 조건식2가 참일 때 실행할 코드
#     .
#     .
# elif [조건식3]:
#     앞선 조건식들이 모두 참이 아니고, 조건식3이 참일 때 실행할 코드
#     .
#     .
# else:
#     앞선 조건식들이 모두 참이 아닐 때 실행할 코드
#     .
#     .

 

elif를 사용하면 중간에 여러 조건식과 코드들을 넣을 수 있습니다.

elif앞선 조건식들이 모두 참이 아닌 경우, 자신의 조건식이 참이면 자신이 가진 코드를 실행하게 합니다.

만약 자신의 조건식이 참이 아니면, 다음 코드로 넘어갑니다.

이렇게 if와 elif의 모든 조건식이 참이 아니라면, 마지막에 있는 else의 코드가 실행되겠죠?

(*이때 else는 꼭 사용하지 않아도 됩니다.)

위 코드의 경우, number가 4이기 때문에 "number is 4"만 출력될 것입니다.


 

이렇게 조건문에 대해 간단히 알아보았습니다.

조건문이 재밌는 점은 위 코드에서 알 수 있습니다.

바로 number에 어떤 값이 저장되어 있냐에 따라 다른 결과가 나온다는 것입니다.

즉, 이때까지는 내가 작성한 대로 결과가 나왔다면, 이제는 number에 어떤 값이 저장되어 있냐에 따라 다른 결과가 나온다는 것이죠.

만약 number에 입력값을 저장하는 코드를 작성한다면,

내가 프로그램을 실행시키고 어떤 값을 입력하냐에 따라 다른 결과가 나올 것입니다.

이를 이용한 한 가지 프로그램을 만들어봅시다.

 


실습 : 성적분류기 만들기

프로그램을 실행하고 성적을 입력하면 해당 성적에 따라 등급을 보여주는 간단한 성적분류기 프로그램을 만들어보겠습니다.

score = int(input("성적을 입력하세요 (0~100): ")) # 점수 입력받기

if score > 100 or score < 0: # 성적이 100보다 크거나 0보다 작으면 (잘못된 값이면)
    # 오류 문구 출력
    print("잘못된 성적값이 입력되었습니다.\n성적은 0~100점이어야 합니다.")
    # 바로 프로그램 멈추기 : exit()을 사용하면 프로그램이 바로 종료됨
    exit()

# 점수에 따라 10점 간격으로 등급 매기기
if score >= 90:
    print("A등급입니다.")
elif score >= 80:
    print("B등급입니다.")
elif score >= 70:
    print("C등급입니다.")
elif score >= 60:
    print("D등급입니다.")
elif score >= 50:
    print("E등급입니다.")
else:
    print("F등급입니다.")

 

  • 성적으로 정수로 입력받아서 변수 score에 저장합니다.
  • 먼저 해당 정수값(score)이 0~100인지 확인하고, 아니라면 오류 문구와 함께 프로그램을 종료합니다. (유효한 값인지 확인하는 과정)
  • 유효한 값이라면, 조건문에 따라 해당 성적의 등급이 출력됩니다.

더 정석적인 코드가 있지만, 아직은 완전 기초 단계이니 이정도 수준의 코드만 만들 수 있어도 충분합니다!


 

이렇게 제어문과 조건문에 대해 배우고, 간단한 성적분류기 프로그램을 만들어보았습니다.

다음 시간에는 반복문에 대해서 배워보겠습니다.

오늘도 수고하셨습니다~