중첩 If - Else 문
Coddy Python 여정의 Fundamentals 섹션에 포함된 레슨 — 77개 중 23번째.
중첩된 If-Else 문을 사용하면 하나의 if-else 문을 다른 문 안에 배치하여 여러 조건을 확인할 수 있습니다. else 블록 안에 if 블록을 중첩할 수 있습니다. 이는 Python에서 흔히 사용되는 유효한 패턴입니다.
기본적인 if-else 문을 작성합니다:
age = 18
title = "None"
if age >= 18:
title = "Adult"
else:
title = "Minor"이제 else 블록 안에 중첩된 조건을 추가해 보겠습니다:
age = 18
title = "None"
allowed_to_drink = False
if age >= 18:
title = "Adult"
else:
title = "Minor"
if age >= 13:
title = "Teenager"
else:
title = "Child"if 블록 내부에 조건을 중첩할 수도 있습니다:
age = 25
title = "None"
allowed_to_drink = False
if age >= 18:
title = "Adult"
if age >= 21:
allowed_to_drink = True
else:
allowed_to_drink = False
else:
title = "Minor"두 예제 모두에서, 내부의 if-else는 이를 포함하는 외부 조건이 충족될 때만 실행됩니다. else 블록 내부(또는 if 블록 내부)에 if 문을 배치하는 것은 완전히 유효합니다 — 이것이 바로 "중첩(nested)"이라고 부르는 이유입니다.
챌린지
초급나이와 부모 동반 여부에 따라 영화 관람 자격을 결정하는 프로그램을 작성하세요.
제공된 코드 (수정하지 마세요):
- 변수
age가 정의되고 입력값이 할당됩니다. - 변수
with_parent가 정의되고 불리언(boolean) 값이 할당됩니다. 입력값이"true"이면True이고, 입력값이"false"이면False입니다. - 변수
message가"None"값으로 정의됩니다.
수행 과제:
중첩된 if-else 문을 사용하여 message 변수를 다음 문자열 중 하나로 설정하세요:
- 나이가 18세 이상이면,
message를"You can watch any movie"로 설정합니다. - 나이가 18세 미만인 경우:
with_parent가True이면,message를"You can watch PG-13 movies"로 설정합니다.with_parent가False이면,message를"You can only watch G-rated movies"로 설정합니다.
중요: with_parent는 이미 불리언 값이므로, 직접 확인하세요 (예: if with_parent:). "true" 또는 "True"와 같은 문자열과 비교하지 마세요.
중요: 문자열은 대소문자와 구두점을 포함하여 정확히 일치해야 합니다. 예를 들어, "PG-13 Movies"가 아니라 "PG-13 movies"(소문자 'm')를 사용하세요.
직접 해보기
# 나이를 정수로 입력받습니다
age = int(input())
# 부모 동반 여부를 불리언(True/False)으로 입력받습니다
with_parent = input() == "true"
# "None"이라는 값으로 message 변수를 선언합니다
message = "None"
# 여기에 중첩된 if-else 코드를 작성하세요
# 이 줄 아래로는 수정하지 마세요
print(message)이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.