: 조건식이란? 어떤 조건에 따라 실행이 분기 되는 식
A if 조건식 else B = 조건식 결과가 True이면 A실행, 그렇지 않으면 B실행
(참고) 조건식은 실행문이 간단할 때 사용할 수 있음. 실행문이 여러개거나 복잡한 경우 '조건문'으로!
num1 = 10
num2 = 100
#방법1
numResult = True if num1 > num2 else False
print('num1 > num2: {} '.format(numResult))
#방법2
numResult = True if num1 > num2 else False
print('num1은 num2보다 크다.') if numResult else print('num1은 num2보다 크지 않다')
<삼항연산자 조건식(두가지 방법)>
userPoint = int(input('포인트: '))
minAblePoint = 200
print('포인트 사용 가능') if userPoint >= minAblePoint else print('포인트 사용 불가능')
userPoint= int(input('포인트: '))
minAblePoint = 200
result = '가능' if userPoint >=minAblePoint else '불가능'
print('포인트 사용 가능 여부 : {}'.format(result))
: 특정 조건에 따라 프로그램을 분기함.
1. 조건문의 종류
| 조건문 종류 | 조건 |
|---|---|
| if문 | 단일 조건 |
| if ~else문 | 양자택일 |
| if ~elif문 | 다자택일(다중조건) |
# if 조건문 형식 #코드블럭
if 조건식:
실행문
# 예시
if 10>5:
print('10은 5보다 크다.')
#if~else문 형식
if 조건식:
실행문
else:
실행문
#예시
passScore = 80
myScore = int(input('점수 입력: '))
if myScore >= passScore:
print('PASS!!')
else:
print('FAIL!!')
(참고1) pass 키워드
: 나중에 코드 작성하고 싶을때 사용
messageString = input('문자 메세지 입력 :')
if len(messageString) >= 500:
pass
else:
pass
(참고2)모든 조건식(삼항연산자)는 if ~else문으로 변경할 수 있음.
userPoint= int(input('포인트: '))
minAblePoint = 200
#조건식(삼항연산자 : a. 조건식 결과에 따른 실행만 하는 경우)
print('포인트 사용 가능') if userPoint >= minAblePoint else print('포인트 사용 불가능')
#if ~else문
if userPoint >=minAblePoint:
print('포인트 사용 가능')
else:
print('포인트 사용 불가능')
#조건식(삼항연산자 : b. 결과를 변수에 할당하는 경우)
result = '가능' if userPoint >=minAblePoint else '불가능'
print('포인트 사용 가능 여부 : {}'.format(result))
#if ~else문
if userPoint >=minAblePoint:
result = '가능'
else:
result = '불가능'
print('포인트 사용 가능 여부: {}'.format(result))
(참고3) 모든if ~else문을 모든 조건식(삼항연산자)으로 변경할 수 있는 것은 x
#if ~else문 (예시: else실행문에 여러개 항이 있는 경우)
userPoint= int(input('포인트: '))
minAblePoint = 200
if userPoint >= minAblePoint:
result = '가능'
else:
result = '불가능'
lackPoint = minAblePoint - userPoint #이부분을 삼항연산자로 표현하기 어려움
print('포인트가 {}부족합니다.'.format(lackPoint))
print('포인트 사용 가능 여부 : {}'.format(result))
3.if ~elif문
: 여러 조건식 결과에 따라 실행문이 결정됨
exampleScore = int(input('시험 성적: '))
grades = ''
if exampleScore >= 90:
grades = 'A'
elif exampleScore >= 80:
grades = 'B'
elif exampleScore >= 70:
grades = 'C'
elif exampleScore >= 60:
grades = 'D'
else:
grades = 'F'
print('성적: {} \t 학점: {}'.format(exampleScore, grades))
if ExampleScore >=70:
grades = 'c'
if ExampleScore >=80:
grades = 'b'
#이경우 85점맞은 학생도 c가 나오게됨.
2) 조건의 범위를 분명히 명시하기
if ExampleScore >=70 and example<80:
grades = 'c'
: 조건문 안에 또 다른 조건문이 있을 수 있음.
exampleScore = int(input('당신의 시험 점수는?'))
if exampleScore < 60:
print('재시험 대상 입니다.')
else:
if exampleScore >= 90:
print('A')
elif exampleScore >= 80:
print('B')
elif exampleScore >= 70:
print('C')
elif exampleScore >= 60:
print('D')