IF 문과 ELIF 문
if 문은 elif(else-if약자) 문으로 확장할 수 있다.
어떤 사람이 10살인지 11살인지 또는 12살인지를 검사할 수 있으며,
이 구문은 if-then-else 문과 다르며, 하나 이상의 elif 문을 둘 수가 있다.
>>> age = 12
>>> if age == 18:
print("What do you call an unhappy cranberry?")
print("A blueberry!")
elif age == 11:
print("What did the green grape say to the blue grae?")
print("Breathe! Breathe!")
elif age == 12:
print("What did 0 say to 8?")
print("Hi guys!")
elif age == 13:
print("Why wasn't 10 afraid of 7?")
print("Because rather than eating 9. 7 8 pi.")
else:
print("Huh?")
What did 0 say to 8?
Hi guys!
>>>
두번째 줄에 있는 if 문은 변수 age의 값이 10인지 검사한다.
그 다음에 있는 print 문은 age가 10일 때 실행된다.
하지만 우리는 age를 12로 설정했기 때문에 컴퓨터는 다음 줄에 있는 if문으로
넘어가서 age가 11인지 검사한다.
이것도 아니기 때문에 컴퓨터는 다음 줄에 있는 if문 으로 넘어가
age가 12인지를 검사한다. 이번에는 12가 맞기 때문에 컴퓨터는 print 문을 실행한다.
이거서 계속 된다.
조건문 조합하기
코드를 더 짧고 간단하게 해주는 and 와 or 키워드를 사용하면 조건물을 조합할 수 있다.
다음은 or를 사용하는 예제이다.
<책에서 틀린 부분 출력 내용>
>>> if age == 10 or age == 11 or age == 12 or age == 13:
print('What is 13 + 49 +84 + 155 + 97? A headache!')
else:
print('Huh?')
Huh?
>>>
<책에서 틀린 부분 출력 내용>
이 코드에서 첫 번째 줄에 있는 조건들 중에서 어떤 것이 참이라면 (즉 age가 10이거나 11, 12 또는 13이라면)
다음 줄에 있는 print로 시작하는 코드 블록이 실행될 것이다.
첫 번째 줄의 조건이 참이 아니라면(else) 마지막 줄에 있는 블록으로 이동하여 Huh?를 화면에 출력한다.
<본인 내용 추가>
age 값이 12 이다. 12가 (참) 맞기 때문에 바로 'What is 13 + 49 +84 + 155 + 97? A headache!')
실행한다.
이 코드를 더 줄인다면 and 키워드와 함께 ~보다 크거나 같다.(>=)와 ~보다 작거나 같다.(<=) 연사자를 다음과 같이 이용할 수 있다.
>>> if age >= 10 and age <= 13:
print('What is 13 + 49 + 84 +155 + 97? A headache!')
else:
print('Huh?')
What is 13 + 49 + 84 +155 +97? A headache!
>>>
12는 10 보다 크고 13 보다 작기 때문에 첫번째 print를 출력한다.
정답>>
댓글 0