Ch 03-2 조건문 / if ~else 와 elif 구문

2024. 7. 4. 14:42·빅데이터 분석가 양성과정/Python
목차
  1. elif 구문
  2. Quiz1
  3. Quiz2
  4. Quiz3

if문을 else와 짝으로 사용할 수 있는데 문법 형식은 아래와 같다.

if 조건식 :

조건식이 참(True)일때 실행 될 코드

else:

조건식이 거짓(False)일 때 실행 될 코드

elif 구문

if ~ else ~ 형태의 조건에 따라 실행 코드 변경을 지시할 일 도 많습니다만 if ~ else~ ~ 형태는 조건에 따라 둘 중 하나의 작어을 실행하는 것입니다. 세상에는 그렇지 않은 경우가 훨씬 더 많습니다. 예를 들어, 한 해를 4개의 시간 구간으로 나누어 1월 ~3월을 1분기, 4월 ~6월을 2분기, 7월 ~ 9월을 3분기, 10월 ~12월을 4분기로 표현하기로 약속하고 각 분기별로 해야할 일이 다르다고 가정해서 코드를 작성해 보겠다.

 


    
python
s_month = input('지금 몇 월 달입니까?')
month = int(s_month)
if 1 <= month <=3:
print('[1분기] - 진정한 새해의 시작인 봄을 준비하세요')
elif 4 <= month <= 6:
print('[2분기] - 년 초에 세웠던 일들을 시작하세요.')
elif 7 <= month <= 9:
print('[3분기] - 준비해서 시작한 일들 중 일부는 성과가 나기 시작할 겁니다.')
print(' - 첫 수확을 맛보면서 나머지 일들에 대해서도 끝까지 노력하십시오.')
else:
print('[4분기] - 진정한 수확의 시기입니다.마무리 잘 해서 잘 걷어들이시고 한 해 마무리 잘 하세요.')
==>
지금 몇월 달 입니까? 12
[4분기] - 진정한 수확의 시기입니다.마무리 잘 해서 잘 걷어들이시고 한 해 마무리 잘 하세요.
  • if 조건문을 효율적으로 사용하기

    
jumsu = input('당신의 점수를 입력하세요 :')
i_jumsu = int(jumsu)
if i_jumsu >= 90:
print('와우 대단하시네요. 어디가서 자랑하셔도 되곘어요')
elif i_jumsu >= 80:
print('이정도면 충분합니다. 다 밥머고 살아요')
elif i_jumsu >= 70:
print('공부 잘 한다고 다 잘 사는거 아닙니다.')
elif i_jumsu >= 60:
print('학교 다닐 때 성적 좋다고 사회에서 성공하나요. 걱정하지 말아요')
elif i_jumsu >= 50:
print('무슨 일 이어요? 별일 아니죠?')
else:
print('시대를 앞서가는 혁명가시군요!')
print('프로그램 종료')
==>
당신의 점수를 입력하세요 :22
시대를 앞서가는 혁명가시군요!
프로그램 종료
  • False 로 변환되는 값

    
if 0:
print('조건이 True')
else:
print('조건이 False')
==>
조건이 False

    
condition = 3>2
print('조건:', condition)
if condition:
print('조건이 True')
else:
print('조건이 False')
==>
조건: True
조건이 True

그렇다면 if 문의 조건식에 문자열 데이터를 넘기면 어떻게 인식하는가


    
if 'a':
print('조건이 True')
else:
print('조건이 False')
==>
조건이 True

    
if '':
print('조건이 True')
else:
print('조건이 False')
==>
조건이 False

Quiz1

등수에 따라 상품이 있다. 3등은 상품권 5만원 2등은 상품권 5만원에 핸드폰 1등은 상품권 5만원, 핸드폰 그리고 노트북 등수 입력시 해당 상품 출력되도록 코드 작성


    
p = input('몇 등?')
p = int(p)
print('받으실 상품은 ', end = '')
prize = ''
if p <= 3:
prize += '상품권 5만원, '
if p <=2:
prize += '핸드폰, '
if p == 1:
prize += '노트북, '
prize = prize[:-2]
print(prize + '입니다.')
==>
몇 등?1
받으실 상품은 상품권 5만원, 핸드폰, 노트북입니다.

 

  • 키워드 ‘pass’는 ‘아무것도 안함 이라는 뜻으로 쓰이기도 하고 어떻게 코딩 해야할지 아직 생각중이다. 나중에 여기 코드를 넣을 테니 일단은 아무것도 하지 말고 넘어가자 라는 의도이다. 전자의 의미는 코드 완성한거야. 이 때 아무것도 안할거야 이며 후자는 일단 그냥 넘어가자 라는 뜻이다.

    
your_choice = input('다음 중 지금 제일 먹고 싶은 것을 고르세요')
print('\\n')
print('당신의 선택은 : "{}"입니다. '. format(your_choice))
if your_choice == '수박':
print('{}! 좋죠'.format(your_choice))
elif your_choice == '참외':
print('{}! 좋죠. 그런데 참외를 우리나라 사람만 먹는다고 하던데요')
elif your_choice == '감':
pass
else:
print('목록에 없는 것을 선택하셨습니다.')
print('끝')
==>
다음 중 지금 제일 먹고 싶은 것을 고르세요감
당신의 선택은 : "감"입니다.
끝

Quiz2

지난 주말에 식물원에 다녀왔다. 입장료를 받는다. 어린이는 만 7세 미만은 무료이고 만 7세부터 만 12세까지 2000원 만 12세 이상부터 만 18세 미만까지 400원 만 18세부터 만 64세미만 까지 8000원 만 65세 이상은 무료

만 나이를 입력하면 나이에 맞는 이용료를 출력하는 프로그램을 작성하라


    
age = int(input('당신의 만 나이는? :'))
if age <7 :
price = '무료'
elif age <=12:
price = 2000
elif age < 18:
price = 4000
elif age<65:
price = 8000
else:
price = '무료'
print('만 나이가 {}이신 당신의 요금은 {}입니다.'.format(age, price))
==>
당신의 만 나이는? :18
만 나이가 18이신 당신의 요금은 8000입니다.

Quiz3

점수에 따라 A,B,C,D,F 학점을 부여하려고 한다.

90~100은 A, 즉 100점을 포함한 90점대

80~90 미만까지는 B,즉 80점대

70~80 미만까지는 C, 즉 70점대

60~70 미만까지는 D, 즉 60점대

0~60 미만은 F

실수형태로 점수를 입력받아서 A, B, C, D, F를 출력하는 코드를 작성하시오.

예를들어 점수가 82.4인경우 B학점이다.


    
jumsu = float(input('점수를 입력하세요 : '))
idx = int(jumsu/10)
idx = 9 if idx ==10 else idx
grades = "FFFFFFDCBA"
print(grades[idx])
==>
점수를 입력하세요 : 66
12

<참고>


    
# 틀린코드
x = 1
if type(x) == 'int':
print('정수')
elif type(x) =='str':
print('문자열')
else:
print('몰라')
==>
몰라

    
# 올바른 코드
x = 'ksp'
if type(x) is int:
print('정수')
elif type(x) is str:
print('문자열')
else:
print('몰라')
==>
문자열
  • type을 알아보기 위해선 단순히 비교를 하면 안되고 is를 사용해야한다.

'빅데이터 분석가 양성과정 > Python' 카테고리의 다른 글

Ch04-2 반복문 / 딕셔너리와 반복문  (0) 2024.07.04
Ch04-1 반복문 / 리스트와 반복문  (2) 2024.07.04
Ch 03-1 조건문 / 불 자료형과 if 조건문  (0) 2024.07.04
Ch02-4 자료형 / 숫자와 문자열의 다양한 기능  (0) 2024.07.04
Ch02-3 자료형 / 변수와 입력  (0) 2024.07.04
  1. elif 구문
  2. Quiz1
  3. Quiz2
  4. Quiz3
'빅데이터 분석가 양성과정/Python' 카테고리의 다른 글
  • Ch04-2 반복문 / 딕셔너리와 반복문
  • Ch04-1 반복문 / 리스트와 반복문
  • Ch 03-1 조건문 / 불 자료형과 if 조건문
  • Ch02-4 자료형 / 숫자와 문자열의 다양한 기능
분석가 황규진
분석가 황규진
공공기관 위험평가관련 부서에서 근무하고 있습니다.
HGJ's Insight공공기관 위험평가관련 부서에서 근무하고 있습니다.
글쓰기 관리
분석가 황규진
HGJ's Insight
홈
|
로그인
  • 전체 글 567
    • 개인 활동(일상) 3
      • 독서 2
      • 근황 공유 1
    • 개인 활동(공부) 53
      • Tableau Bootcamp 10
      • 금융 공부 9
      • 직무 공부 22
      • 강의 12
    • 개인프로젝트 4
      • 신용카드 연체 평가 모델 0
      • 대출 승인 여부 예측 모델 4
    • 자격증 7
      • 빅데이터분석기사 1
      • 정보처리기사 1
      • 경영정보시각화 1
      • SQL개발자(SQLD) 1
      • 데이터 분석 준전문가(ADsP) 1
      • 통계적품질관리(SPC) 1
      • AICE Associate 1
    • 코드 정리 11
      • 코드 정리 - Tistory 8
      • 코드 정리 - Python 3
    • 코딩테스트연습 116
      • SQL_프로그래머스 116
    • 취업사관학교 9기 199
      • 모닝스쿨 54
      • 스스로 모닝스쿨 125
      • 직무 스터디 20
      • 반성과 다짐 0
    • 빅데이터 분석가 양성과정 173
      • Python 88
      • Python - 머신러닝 26
      • Python - 딥러닝 31
      • PyQt 4
      • JavaScript 10
      • MySQL 13
      • Node.js 1
hELLO· Designed By정상우.v4.6.1
분석가 황규진
Ch 03-2 조건문 / if ~else 와 elif 구문
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.