c.horokhoroklog

Python 시리즈 8

순서제목작성일조회댓글
8[Python] #8 함수2026. 6. 23. (화)170
7[Python] #7 문자열2026. 6. 19. (금)560
6[Python] #6 리스트2026. 6. 19. (금)650
5[Python] #5 반복문2026. 6. 18. (목)950
4[Python] #4 조건문2026. 6. 18. (목)1090
1 / 2

[Python] #4 조건문

그린 프로필그린||22:35:08|조회 109|댓글 0|반응 0
#python#코드트리#trail0

thumbnail_python4.png

참고: codetree Trail 0의 Chapter 3, 5

1. 조건문

프로그램이 특정 조건을 만족할 때만 특정 코드를 실행하게 하는 구조

1-1. 기본 구조

1-1-1. 조건

참 또는 거짓으로 평가되는 표현식

1-1-2. 실행할 동작

조건이 참일 때 수행되는 행동


1-2. if

if 조건:
    실행할 동작
  • 실행할 동작에서는 정확한 코드 블록 구분위해 들여쓰기(tab·띄어쓰기 4칸) 중요
  • 올바르지 않은 들여쓰기는 IndentationError 오류 발생 (파이썬의 코드 블록 시작 인식 불가)
  • 단일(첫 번째) 조건이 참이면 해당 코드 블록 실행
  • 단일 조건이 거짓이면 해당 코드 블록 건너뜀

1-2-1. 조건 표현식

  • If 문에서는 True 또는 False로 평가되는 모든 논리적 수식을 조건으로 사용한다.
  • 비교 연산자로 만듦.
# 예시1
age = int(input())

if age >= 18:
    print('성인입니다')
    print('good')

print('확인 완료되었습니다')

# 출력1 (입력 20)
성인입니다
good
확인 완료되었습니다

# 출력2 (입력 10)
확인 완료되었습니다

1-3. else

1-3-1. if-else 문

조건에 따라 두 가지 경우 중 하나를 선택적으로 실행하는 조건문

if 조건:
    조건이 True일 때 실행되는 코드
else:
    조건이 False일 때 실행되는 코드
  • 조건이 참이면 if 블록(만약 그러면)의 코드가 실행되고, 조건이 거짓이면 else 블록(그렇지 않다면)의 코드 실행
  • 단, else 없이 if 문 단독 사용 가능 (특정 조건일 때만 실행하고 그렇지 않을 때는 아무 것도 하지 않을 수 있다.)
  • if 문의 확장으로, 거짓일 때 수행할 동작(참/거짓)을 명확히 정의하므로 프로그램의 흐름을 더 명확 + 예측 가능하게 함

1-4. elif(=else if)

1-4-1. if-elif-else 문

하나의 조건만 확인하는 if 문보다 더 다양한 상황을 처리할 수 있도록 하는 조건 분기 구조

if 조건1:
    조건1True일 때 실행할 코드
elif 조건2:
    조건1False이면서, 조건2True일 때 실행할 코드
elif 조건3:
    조건1, 조건2False이면서, 조건3True일 때 실행할 코드
else:
    조건1, 조건2, 조건3False일 때, 실행할 코드
  • elif 는 2개 이상의 추가 조건을 순차적으로 여러 조건을 검사하며 각 조건에 맞는 코드 실행
  • else 는 모든 조건이 만족하지 않을 때 해당 코드 블록 실행
  • 가장 위 if 조건을 만족하면(만약 그렇다면) 해당 코드만 실행하고 - 만족하지 않으면(그렇지 않고) 다음 elif 조건 확인(만약 그렇다면) - if 와 elif 조건이 만족하지 않으면(위 조건들이 모두 아니면) else 블록 코드 실행
  • if-elif-else 문에서, 앞의 조건에서 참이 나오면 그 뒤의 나머지 elif 와 else 문은 실행되지 않

1-4-2. elif와 else의 선택적 사용

  • if-elif-else 구조에서 상황에 따라 필요에 맞게 elif 와 else 는 선택적 사용 가능 (생략 가능)

1-4-2-1. if-else 만 사용

if 조건:
    조건이 True일 때 실행할 코드
else:
    조건이 False일 때 실행할 코드
  • 특정 조건이 참일 때와 거짓일 때, 두 가지 경우만 처리

1-4-2-2. if-elif 만 사용

if 조건1:
    조건1True일 때 실행할 코드
elif 조건2:
    조건1False이면서, 조건2True일 때 실행할 코드
elif 조건3:
    조건1, 조건2False이면서, 조건3True일 때 실행할 코드
  • 여러 조건을 확인하되, 모든 조건이 거짓일 때 특별히 처리할 필요가 없을 때 사용

1-5. 논리 연산자 활용 조건문

  • 조건이 2개 이상일 때 복합 조건문 만들 때 사용
  • 보다 복잡한 논리 구조 구현 가능하게 도움

1-5-1. and

  • 모든 조건이 참일 때, 전체 조건은 참 (조건1 or 조건2")
# 예시1 ("회원이 아닙니다"가 출력되는 선택지를 모두 고르시오.)
age = int(input("나이를 입력하세요: "))
member = input("회원입니까? 맞으면 1, 아니면 0을 입력하세요: ")

if age >= 18 and member == 1:
    print("서비스를 이용할 수 있습니다.")
elif age >= 18:
    print("회원이 아닙니다.")
else:
    print("미성년자는 이용할 수 없습니다.")
# ① 20\n1 
# ② 18\n0 ✅
# ③ 17\n1
# ④ 15\n0
# ⑤ 20\n0 ✅

1-5-2. or

  • 하나 이상의 조건이 참일 때, 전체 조건은 참 (조건1 or 조건2)
  • 예외 조건을 포함해야 할 때 괄호()와 함께 전체 조건 구성 가능
# 예시1 (성인이 되기 위한 전체 조건)
(나이 >= 18 and 시민권 보유) or 특별 허가

# 예시2 (윤년 판단하기)
year = 2000

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year}년은 윤년입니다.")
else:
    print(f"{year}년은 윤년이 아닙니다.")
# 2000년은 윤년입니다.

1-6. 중첩 조건문

if 조건1:
    # 조건1이 참일 때 실행하는 코드
    if 조건2:
        # 조건1과 조건2가 모두 참일 때 실행하는 코드
    else:
        # 조건1은 참이지만 조건2는 거짓일 때 실행하는 코드
else:
    # 조건1이 거짓일 때 실행하는 코드

if 문 안에 또 다른 if 문을 사용하는 것

  • 한 가지 큰 조건을 먼저 확인 후, 그 조건이 참일 때만 추가 조건을 세분화하여 처리
  • 복잡한 상황을 단계별로 나누어 깔끔하게 처리
# 예시1 (해외 여행을 떠나기 전 조건 확인하기)
여권_valid = True        # 여권 유효 여부
비자_required = False    # 비자 필요 여부

if 여권_valid:
    # 여권이 유효한 경우
    if 비자_required:
        print("비자를 발급받습니다.")
    else:
        print("바로 여행을 떠납니다.")
else:
    # 여권이 유효하지 않은 경우
    print("여권을 갱신하거나 새로 발급받습니다.")
# 예시2 (3개의 정수 A, B, C를 입력받았을 때, 중앙값을 구하는 프로그램을 작성하기)
# 중앙값: 오름차순 나열 시, 중앙에 오는 값
a, b, c = list(map(int, input().split()))

if a > b:
    if b > c:
        print(b)
    elif c > a:
        print(a)
    else:
        print(c)
else:
    if c < a:
        print(a)
    elif b < c:
        print(b)
    else:
        print(c)

quiz

[코드트리 추천 링크] https://www.codetree.ai/ko/trail-info?referralCode=th2gr22n

댓글 0

로그인 필요 프로필로그인 필요

아직 댓글이 없습니다.