1. 사용자에게 태어난 연도를 입력받아 띠를 출력하는 프로그램을 작성해주세요.작성 시 입력 받은 연도를 12로 나눈 나머지를 사용합니다.
(나머지가 0~11일 때, 순차적으로 원숭이~양입니다.)
srt_input = input("테어난 해를 입력해 주세요>")
birth_year = <공란>
if <공란>:
print("원숭이 띠입니다.")
elif <공란>:
print("닭 띠 입니다.")
<중략>
elif <공란>:
print("양 띠 입니다.")
<작성 코드>
<결과>
<특이사항>
위 코드는 elif문을 활용한 다중 조건문으로, 입력 받은 값이 지정된 조건을 충족하면 지정된 값을 출력하는 구조이다.
단순한 구조로 str_input, birth_year, print, if-elif를 거치고 있으며, 큰 단락으로 나누어 본다면 두 개로 나누어 볼 수 있다.
1. str_input~print: 입력 데이터 처리
2. if-elif: 지정된 조건(나머지)을 충족하는 구문 확인 시 해당 구문 내 출력문 실행(초록색 화살표)
2. else, elif 구문
아래는 else, elif를 활용한 구문이다.
① (p.177) if-else를 활용한 짝/홀수 구분
# 입력
number = int(input("정수 입력>"))
# 조건문
if number % 2 == 0:
print("짝수입니다") # 참 (나머지=0, 짝수)
else:
print("홀수입니다") # 거짓 (나머지!=0, 홀수)
<결과>
② (p.178) 계절 구하기
# datetime 라이브러리
import datetime
# 현재 날짜 및 변수 선언
now = datetime.datetime.now()
month = now.month
season = ''
# 계절 변수 저장
if 3 <= month <= 5:
season = '봄'
elif 6 <= month <= 8:
season = "여름"
elif 9 <= month <= 11:
season = "가을"
else:
season = "겨울"
# 출력
print(f"{month}월은 {season}입니다. ")
<결과>
<특이사항>
③ (p.180-181) 유머로 조건문 구현하기
# 변수 선언
score = float(input('학점 입력 >>'))
# 조건문
if score == 5.0:
print('저런... 당신은 교수님의 노예')
elif 4.5 <= score < 5.0: # 조건문 중복 검사 1
print('신')
elif 4.2 <= score < 4.5: # 조건문 중복 검사 2
print('교수님의 사랑')
elif 3.5 <= score:
print('현 체제의 수호자')
elif 2.8 <= score:
print('일반인')
elif 2.3 <= score:
print('일탈을 꿈꾸는 소시민')
elif 1.75 <= score:
print('오락문화의 선구자')
elif 1.0 <= score:
print('불가촉천민')
elif 0.5 <= score:
print('자벌레')
elif 0 < score:
print('플랑크톤')
else:
print('시대를 앞서가는 혁명의 씨앗')
<결과>
<특이사항>
④ (p.182) 뭔가 없는 것 같은 False
print ('# if 조건문에 0 넣기')
if 0:
print('0은 True로 변환')
else:
print('0은 False로 변환')
print()
print ('# if 조건문에 빈 문자열 넣기')
if '':
print('빈 문자열은 True로 변환')
else:
print('빈 문자열은 False로 변환')
print()
print( '# if 조건문에 빈 리스트 넣기')
if []:
print('빈 리스트는 True로 변환')
else:
print('빈 리스트는 False로 변환')
<결과>
<특이사항>
⑤ (p.183) 어라 구문이 실행이 안되네
# 입력
number = int(input('정수 입력 >>'))
# 조건문
if number > 0:
else:
<결과>
<특이사항>
⑥ (p.184) pass
# 입력
number = int(input('정수 입력 >>'))
# 조건문
if number > 0:
pass
else:
pass
<결과>
<특이사항>
⑦ (p.185) raise NotImplementedError
# 입력
number = int(input('정수 입력 >>'))
# 조건문
if number > 0:
raise NotImplementedError
else:
raise NotImplementedError
<결과>
<특이사항>