조건문(if else)
If 문
if문의 기본적인 형태는 아래와 같습니다.
x=5
if x<10 : #if는 예약어이며, 컴퓨터는 if 다음에 나오는 조건문의 True, False를 판단하게 됩니다.
print('Smaller')#만약 True인 경우 :(콜론) 아래로 들여쓰기 된 부분을 실행하게 됩니다.
#여기서는 Smaller를 출력하게 됩니다.
비교 연산자
조건문의 참 또는 거짓을 판별하기 위해 사용되는 비교 연산자들이 있습니다. 아래와 같은 비교 연산자들을 사용합니다.
연산자 | 의미 | 예시 |
> | x가 y보다 클 때 True, 그 외에는 False | x > y |
< | x가 y보다 작을 때 True, 그 외에는 False | x < y |
>= | x가 y보다 크거나 같을 때 True, 그 외에는 False | x >= y |
<= | x가 y보다 작거나 같을 때 True, 그 외에는 False | x <= y |
== | x와 y가 같을 때 True, 그 외에는 False | x == y |
!= | x와 y가 다를 때 True, 그 외에는 False | x != y |
들여쓰기 (indentation)
파이썬에서는 들여쓰기를 매우 엄격하게 생각합니다.
들여쓰기가 제대로 되어있지 않다면 파이썬은 문법 에러를 통해 우리에게 도움을 요청하게 됩니다.
x = 5
if x < 10 :
print('Smaller')
if 아래의 문장에서 들여쓰기(띄어쓰기 4번 or Tab 1번)를 해줘야 제대로 동작합니다.
단일 if 문, if else 문
단일 if 문
단일 if문으로 사용하는 경우, 조건문이 참인 경우에만 미리 입력해 놓은 실행코드를 실행하게 됩니다.
x = 5
if x < 10 :
print('Smaller')
if else 문
첫번째 조건문의 조건이 거짓인 경우에 대해 처리하기 위해 우리는 else를 사용할 수가 있습니다.
즉, 첫번째 if문의 조건이 거짓인 경우 else문 이하의 실행코드가 실행됩니다.
x = 11
if x < 10 :
print('Smaller')
else :
print('Bigger')
#11 < 10은 False 입니다.
#따라서 Bigger가 출력됩니다.
주의사항
조건문(if, else)을 사용할 때에는 주의할 점이 2가지 있습니다.
1) 조건문 후에 : (콜론)을 찍어야 한다.
2) 조건문이 참일 경우 실행할 코드는 들여쓰기를 해야한다.
다중 분기 (Multi-way decisions)
우리는 하나의 조건문 블럭에 프로그래머의 필요에 의해 조건문들을 추가할 수 있습니다.
elif라는 예약어를 통해 가능합니다.
x=21
if x < 2 :
print('Small')
elif x < 10 :
print('Medium')
elif x < 20 :
print('Big')
elif x < 40 :
print('Large')
elif x < 100 :
print('Huge')
else :
print('Ginormous')
#Large가 출력됩니다.
try / except
파이썬에서는 발생할 수 있는 error에 대해서 프로그래머가 미리 대처를 할 수 있도록 하였습니다. 이는 try / except로 가능합니다.
astr = "123"
try:
print("Hello")
islnt = int(astr)
print("World")
except:
islnt = "Integer로 변환할 수 없습니다."
print('Done', islnt)
#Hello
#World
#Done 123이 순서대로 출력됩니다.
예를들어 사용자가 입력값으로 숫자만 넣어야 하는 경우 문자를 넣었을 때 프로그램이 종료되고 멈출 것이 아니라, 올바른 입력값을 넣도록 하는 것이 합리적인 방법이겠죠
연습문제 1
챕터 2의 시급계산기에 초과근무수당을 포함하여 프로그램을 만들어라.
sh=input("Enter Hours: ")
sr=input("Enter Rate: ")
fh=float(sh)
fr=float(sr)
#print(fh, fr)
if fh > 40 :
#print("Overtime")
reg = fr * fh
otp = (fh-40.0) * (fr * 0.5)
#print(reg,otp)
xp = reg + otp
else :
#print("Regular")
xp = fh * fr
print ("Pay",xp)
연습문제 2
연습문제 1의 시급계산기의 input 란에 숫자 외의 것을 넣었을때 오류 메시지를 출력하는 프로그램을 만들어라
sh=input("근로시간 : ")
sr=input("시간 당 급여 : ")
try:
fh=float(sh)
fr=float(sr)
except:
print("오류가 발생했습니다. 올바른 값을 넣어주세요.")
quit()
if fh > 40 :
reg = fr * fh
otp = (fh-40.0) * (fr * 0.5)
xp = reg + otp
else :
xp = fh * fr
print ("급여",xp)
'마케팅 > 데이터분석(파이썬)' 카테고리의 다른 글
(파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 6 / 문자열 (0) | 2021.11.16 |
---|---|
(파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 5 / 루프 (0) | 2021.10.18 |
(파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 4 / 함수 (0) | 2021.10.18 |
(파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 2 / 변수, 표현식, 문장 (0) | 2021.10.13 |
(파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 1 / 파이썬? (0) | 2021.10.12 |