5 Condition 23 Lms
5 Condition 23 Lms
5 Condition 23 Lms
조건문
(1) 비교 · 논리 연산자
2
불과 비교 연산자 사용하기
숫자 값이 같은지 다른지 비교하기
같은지를 비교하는 연산자 : == (equal)
다른지를 비교하는 연산자 : != (not equal)
3
불과 비교 연산자 사용하기
문자열도 == 와 != 연산자로 비교 가능
문자열은 비교할 때 대소문자를 구분
단어가 같아도 대소문자가 다르면 다른 문자열로 판단
4
불과 비교 연산자 사용하기
부등호 사용하기
큰지 , 작은지 , 크거나 같은지 , 작거나 같은지를 판단
5
불과 비교 연산자 사용하기
객체 비교 : is & is not
==, != 는 값 자체를 비교
is, is not 은 객체 ( 메모리주소가 가리키는 데이터 , object) 를 비교하므로 , type 이 다르면 False
6
논리 연산자 사용하기
and, or, not
and : 두 값이 모두 True 일 때만 True
7
논리 연산자 사용하기
not : 현재의 논리값을 거꾸로 하여 , not True→False, not False→True
8
논리 연산자 사용하기
과정
9
논리 연산자 사용하기
논리 연산자와 비교 연산자를 함께 사용하기
10
bool() 연산자로 type 변환
정수 , 실수 , 문자열을 불로 만들기 : bool() 사용
정수 0, 실수 0.0 외의 모든 숫자는 True
빈 문자열 ‘’” , ‘’ 를 제외한 모든 문자열은 True
문자열의 내용 자체는 판단하지 않으며 값이 있으면 True
None 은 False
None 의 type 은 NoneType
11
(2) 조건문 : if
아침에 날씨를 보고 하는 행동 ?
13
순서도로 보는 기본 if 조건문
▼ 실행 흐름 : 조건을 만족하면 바로 밑의 종속 코드블록을 실행하고 ,
아니면 ( 조건을 만족하지 않으면 ) 종속 코드블록을 skip ( 다음 명령어로 )
14
기본 if 조건문 사용
if 예약어 뒤에 조건식을 지정하고 , :( 콜론 ) 을 붙이고 , 다음 줄에 실행 코드
실행할 코드 블록은 존재해야 하며 반드시 들여쓰기를 해야 함
if- 블록
if- 블록
15
기본 if 조건문 형태
16
if 조건문 사용시 주의점
= 은 할당 (assignment), == 은 비교 (comparison)
if 에 = 을 사용하면 문법 에러가 발생함
17
if 조건문 사용시 주의점
조건식 끝에는 꼭 “ :” 이 와야 함
Python interpreter(SW) 가 구조 파악 가능
18
if 조건문 사용시 주의점
들여쓰기를 정확히 지켜야 함
파이썬에게는 들여쓰기가 문법
Python scanner 가 구조 파악 가능
19
if 조건문과 들여쓰기
수정 코드 1
20
if 조건문과 들여쓰기
앞의 결과와 동일한 , 그러나 다른 수정코드 2
첫 번째 print 만 들여쓰기를 하고 , 두 번째 print 는 들여쓰기를 하지 않으면 ?
21
if 조건문과 들여쓰기
그러나 , 이전 코드에서 x = 5 라면 ?
22
조건문의 실행코드 생략 : pass
if 조건문에서 코드를 생략하기
23
중첩 if 조건문
여러 번 비교 가능 ? 가능
종속 코드 블록 안에 새로운 if 조건문 사용 가능
같은 수준의 여러 개 if 조건문 사용 혹은 연속적 중첩형 if 조건문 사용 가능
( 예시 ) 변수의 값이 10 이상이면 '10 이상입니다 .' 를 출력한 뒤 15 이면 '15 입니다 .', 20 이면 '20 입니다 .' 를
출력
24
입력값과 if 조건문
변수에 사용자가 입력한 값을 저장하고 if 조건문 사용
25
else: 두 방향으로 분기
27
else 의 사용방법
else 는 if 와 함께 사용 – 단독 사용 불가
if 와 같은 표현 형식 : else 도 “ :”( 콜론 ) 을 붙이고 다음 줄에 실행할 종속 코드블록 위치
else 뒤에는 조건식이 없으나 , if 뒤의 조건식 앞에 “ not” 을 붙인 것과 같은 효과
28
if 와 else 의 기본 형태와 실행 흐름
else 는 if 의 조건식이 만족하지 않을 때 else: 이후 종속코드블록을 실행
x 에 5 가 들어있어서 x == 10 을 만족하지 않으므로 else 의 print 가 실행되어 '10 이 아닙니다 .' 가 출력됨
▼ if 와 else
29
if 와 else 의 기본 형태와 실행 흐름
조건식이 참 (True) 이면 if 의 종속 코드블록 (if 본문 ) 가 실행되고 ,
거짓 (False) 이면 else 의 종속 코드블록 (else 본문 ) 가 실행
30
else 와 들여쓰기
else 는 if 와 들여쓰기 규칙이 같음
31
else 와 들여쓰기
종속 코드 블록 내 코드가 여러 줄일 때는 들여쓰기에 유의
32
if 조건문의 동작 방식
조건식이 아닌 값일 때
34
if 조건문에 문자열일 때
문자열은 내용이 있을 때 참 , 빈 문자열은 거짓임
35
여러 개의 조건식 지정 방법
만약 조건이 복잡할 때는 어떻게 해야 할까 ?
예시 : 인터넷 포털의 중고나라 카페에 글을 올리려면
먼저 포털 사이트의 회원이고 중고나라 카페의 회원이라야 한다 .
36
여러 개의 조건식 지정 방법
if 조건문에는 논리 연산자를 사용하여 조건식을 여러 개 지정 가능
37
여러 개의 조건식 지정 방법
중첩 if 조건문 : if 를 계속 나열해서 if 중첩 구조로 만듦
예시 : x 가 양수이고 20 보다 작은지 판단하려고 함
조건 1:
조건 2:
더 간단하게 ?
프로그래밍 언어마다 다르지만 , python 은 지원
38
elif: 여러 방향으로 분기
40
elif 사용하기
if, else 처럼 조건식 끝에 :( 콜론 ) 을 붙임
elif 단독으로 사용 불가
if 조건식 1:
if 조건식 1:
코드 1
코드 1
else:
elif 조건식 2: # 조건식 1 의 결과값은 False
if 조건식 :
코드 2
코드 2
들여쓰기를 맞춰야 함
41
if, elif, else 가 있는 조건문
if 조건식 1:
코드 1
elif 조건식 2: # 조건식 1 의 결과값은 False
코드 2
else: # 조건식 1 과 조건식 2 의 결과값 모두 False
코드 3
사용 예제
42
if, elif, else 사용 : 음료수 자판기
해당 음료수 자판기에서는 콜라 , 사이다 , 환타를 판다 .
1 번은 '콜라' , 2 번은 '사이다' , 3 번은 '환타‘
프로그램에서 음료수 선택은 해당 번호를 입력하고 해당하는 음료수 이름을 출력
1, 2, 3 이외의 숫자는 '제공하지 않는 메뉴'임을 출력
43
Python 에서 조건문 표현의 유의사항
if 예약어를 사용하는 기본 if 조건문
if 부분은 꼭 있어야 한다
elif 와 else 는 선택적 사용으로 , if 와 꼭 함께 사용된다
같은 수준의 if, elif, else 는 동일한 스페이스만큼 들여쓰기를 한다 .
44