Python 기초 05. 조건식

yoong·2023년 4월 8일

1. Python

목록 보기
6/21

Python 기초 5.

01.조건식

: 조건식이란? 어떤 조건에 따라 실행이 분기 되는 식
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보다 크지 않다')

<삼항연산자 조건식(두가지 방법)>

  • a.조건식 결과에 따른 실행만 하는 경우
userPoint = int(input('포인트: '))
minAblePoint = 200

print('포인트 사용 가능') if userPoint >= minAblePoint else print('포인트 사용 불가능')
  • b.조건식 결과를 변수에 할당하는 경우
userPoint= int(input('포인트: '))
minAblePoint = 200

result = '가능' if userPoint >=minAblePoint else '불가능'
print('포인트 사용 가능 여부 : {}'.format(result))

02.조건문

: 특정 조건에 따라 프로그램을 분기함.
1. 조건문의 종류

조건문 종류조건
if문단일 조건
if ~else문양자택일
if ~elif문다자택일(다중조건)
  1. if문
    : True 조건문 실행 , False 아무일도 일어나지 X
    if문 작성시 실행문을 코드블럭 형식으로 들여쓰기 해주어야함.
    코드블럭 : 시각적 스크립팅 환경 내의 문자 스크립팅 인터페이스
# if 조건문 형식 #코드블럭
	if 조건식:
    	실행문
			
# 예시
if 10>5:
	print('10은 5보다 크다.')
  1. if ~else문
    : 조건식 결과에 따라 둘중 하나가 실행됨.
#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))
  • 다자택일 사용시 주의할점
    1) 조건식의 순서가 중요함.
    : 프로그램에서 다중선택할때 컴퓨터는 순차적으로 비교하기 때문에 순서를 잘 지키는 것이 중요 (ex 성적 선택시, 90/80/70/60 순으로)
if ExampleScore >=70:
	grades = 'c'
if ExampleScore >=80:
	grades = 'b'
    
#이경우 85점맞은 학생도 c가 나오게됨. 

2) 조건의 범위를 분명히 명시하기

if ExampleScore >=70 and example<80:
	grades = 'c'
    


03.중첩 조건문

: 조건문 안에 또 다른 조건문이 있을 수 있음.

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')


Reference

  • 이글은 제로베이스 데이터 취업 스쿨의 강의자료 일부를 발췌하여 작성되었음.
profile
데이터와 이미지로 세상을 공부하는 중입니다 :)

0개의 댓글