개발/python

파이썬 조건문 if 사용법 쉽게 이해하기

notebase 2026. 5. 21. 18:43

딕셔너리와 집합으로 값을 정리했다면, 이제 파이썬 조건문 if로 상황에 따라 다른 코드를 실행하는 방법을 배울 차례입니다.

값이 같을 때만 실행하거나, 특정 조건에서만 다른 결과를 보여주고 싶을 때 if를 사용합니다.

 

조건문이 필요한 이유

프로그램은 항상 같은 일만 반복하지 않습니다.

나이에 따라 다른 안내를 보여주거나, 점수에 따라 다른 결과를 출력해야 할 때가 있습니다.

예를 들어 아래처럼 점수가 60점 이상일 때만 합격이라고 표시할 수 있습니다.

score = 75

if score >= 60:
    print("합격")

실행 결과:

합격

조건문이 없다면 상황에 따라 다른 동작을 만들기 어렵습니다.

if 기본 구조

if 조건문은 아래 형태로 작성합니다.

if 조건식:
    실행할 코드

여기서 중요한 점은 두 가지입니다.

  • if 뒤에는 조건식이 옵니다.
  • 조건식 뒤에는 반드시 :가 붙습니다.

간단한 예제를 보면 더 이해하기 쉽습니다.

age = 20

if age >= 19:
    print("성인입니다")

실행 결과:

성인입니다

조건식이 참이면 들여쓰기된 코드가 실행됩니다.

들여쓰기의 중요성

파이썬은 들여쓰기로 코드의 범위를 구분합니다.

즉, if 아래에서 어디까지 실행할지를 들여쓰기로 판단합니다.

age = 20

if age >= 19:
    print("성인입니다")
    print("입장 가능합니다")

실행 결과:

성인입니다
입장 가능합니다

들여쓰기가 맞지 않으면 오류가 나거나, 생각과 다른 위치에서 코드가 실행될 수 있습니다.

age = 20

if age >= 19:
print("성인입니다")

위 코드는 들여쓰기가 없어서 오류가 납니다.

초보 단계에서는 공백 4칸 들여쓰기를 습관처럼 쓰는 것이 가장 편합니다.

비교 연산자

if 조건문에서는 비교 연산자를 자주 사용합니다.

연산자 의미 예시
== 같다 age == 20
!= 같지 않다 age != 20
> 크다 score > 80
< 작다 score < 80
>= 크거나 같다 score >= 60
<= 작거나 같다 score <= 100

예를 들어 아래처럼 사용할 수 있습니다.

number = 10

if number == 10:
    print("10입니다")

실행 결과:

10입니다

=는 값을 저장할 때 사용하고, ==는 같은지 비교할 때 사용한다는 점을 구분해야 합니다.

if else

조건이 참일 때와 거짓일 때를 나누고 싶다면 else를 함께 사용합니다.

score = 52

if score >= 60:
    print("합격")
else:
    print("불합격")

실행 결과:

불합격

if는 조건이 맞을 때 실행하고, else는 그 외의 경우를 처리합니다.

if elif else

조건이 두 개보다 많다면 elif를 사용합니다.

score = 85

if score >= 90:
    print("A")
elif score >= 80:
    print("B")
elif score >= 70:
    print("C")
else:
    print("D")

실행 결과:

B

위 코드는 위에서부터 순서대로 검사합니다.

한 조건이 참이 되면 그 아래 조건은 더 보지 않습니다.

여러 조건을 연결하는 and, or, not

조건을 하나만 쓰는 경우도 많지만, 두 개 이상을 함께 확인할 때도 있습니다.

and

and는 두 조건이 모두 참일 때만 참입니다.

age = 20
has_ticket = True

if age >= 19 and has_ticket:
    print("입장 가능합니다")

실행 결과:

입장 가능합니다

or

or는 둘 중 하나만 참이어도 참입니다.

day = "토요일"

if day == "토요일" or day == "일요일":
    print("주말입니다")

실행 결과:

주말입니다

not

not은 참과 거짓을 뒤집습니다.

is_closed = False

if not is_closed:
    print("영업 중입니다")

실행 결과:

영업 중입니다

in을 활용한 조건문

이전 글에서 배운 리스트, 딕셔너리, 집합에서도 조건문을 자주 사용합니다.

in은 어떤 값이 들어 있는지 확인할 때 편리합니다.

tags = {"python", "basic", "if"}

if "python" in tags:
    print("파이썬 태그가 있습니다")

실행 결과:

파이썬 태그가 있습니다

딕셔너리에서는 key가 있는지 확인할 때도 쓸 수 있습니다.

user = {"name": "철수", "age": 20}

if "name" in user:
    print(user["name"])

실행 결과:

철수

bool 값과 조건문

True, False 같은 bool 값은 조건문과 아주 잘 맞습니다.

is_logged_in = True

if is_logged_in:
    print("로그인 상태입니다")

실행 결과:

로그인 상태입니다

굳이 if is_logged_in == True:처럼 길게 쓰지 않아도 됩니다.

보통은 아래처럼 짧게 씁니다.

if is_logged_in:
    print("로그인 상태입니다")

반대로 False인지 보고 싶다면 not을 함께 사용할 수 있습니다.

is_logged_in = False

if not is_logged_in:
    print("로그인이 필요합니다")

실행 결과:

로그인이 필요합니다

자주 발생하는 오류

1. ===를 헷갈리는 경우

age = 20

if age = 20:
    print("같습니다")

이 코드는 오류가 납니다.

조건 비교는 ==를 써야 합니다.

if age == 20:
    print("같습니다")

2. 콜론 :을 빼먹는 경우

score = 90

if score >= 80
    print("통과")

if 조건식 뒤에는 반드시 :가 필요합니다.

3. 들여쓰기를 하지 않는 경우

score = 90

if score >= 80:
print("통과")

이 코드도 오류가 납니다.

if 아래의 실행문은 들여써야 합니다.

4. 순서를 잘못 써서 결과가 달라지는 경우

score = 95

if score >= 60:
    print("합격")
elif score >= 90:
    print("우수")

실행 결과:

합격

95는 90 이상이기도 하지만, 위에서 먼저 score >= 60이 참이 되었기 때문에 아래 elif까지 가지 않습니다.

조건이 더 엄격한 쪽을 위에 두는 습관이 필요합니다.

초보자용 예제

아래 예제는 in, and, bool 값을 함께 사용하는 간단한 예제입니다.

cart = ["우유", "빵", "사과"]
is_member = True
total = 12000

if "우유" in cart:
    print("우유가 장바구니에 있습니다")

if is_member and total >= 10000:
    print("할인 대상입니다")
else:
    print("할인 대상이 아닙니다")

실행 결과:

우유가 장바구니에 있습니다
할인 대상입니다

이 정도 예제를 직접 여러 번 바꿔보면 조건문이 훨씬 빨리 익숙해집니다.

예를 들어 total 값을 바꾸거나, is_memberFalse로 바꿔서 결과가 어떻게 달라지는지 확인해보면 좋습니다.

정리

파이썬 조건문 if는 조건에 따라 코드를 다르게 실행할 때 사용하는 기본 문법입니다.

초보 단계에서는 아래 흐름만 먼저 확실히 익히면 충분합니다.

if: 조건이 참일 때 실행
if else: 참/거짓 두 경우 나누기
if elif else: 여러 경우 나누기
and, or, not: 조건 연결하기
in: 포함 여부 확인하기

특히 들여쓰기와 :는 문법의 일부이기 때문에 꼭 함께 익혀야 합니다.