python - 조건문 if
조건문 if의 특징
- 해당 조건에 맞는 상황을 수행하는 데 쓰인다.
↑ ticket에 입력된 1은 참, 따라서 if문이 실행되어 다음 문장 ' 4시까지 입장해주세요 ' 실행
# else는 참이 아닐때 해당된다. ex)ticket=0
조건문 if문의 기본 구조
↑ 조건문이 참이면 if문 바로 다음의 문장 ( if 블록 )들을 수행한다.
# 거짓이면 else문 다음의 문장 ( else 블록 )들을 수행하게 된다.
# else문은 if문 없이 독립적으로 사용할 수 없다.
※ if 문의 구분은 들여쓰기로 한다.
↑ 파이썬은 조건문을 사용할때 문법상 들여쓰기가 매우 중요하다.
# 들여쓰기는 공백( space ) 이나 탭( tab ) 중에 어떤걸 사용해도 상관없다. 단,
혼용해서 사용하면 안된다.
# 조건문 다음에 콜론( : )도 잊지말자 , 콜론은 마침표와 같다.
↑ 조건문이 참이면 if블록의 내용이 출력된다.
↑ 조건문이 거짓이면 else블록의 내용이 출력된다.
조건문 if문의 참거짓 예
- 조건문은 참과 거짓을 판단하는 문장이다. 대표적인 자료형의 참과 거짓이 몇가지 있다.
자료형 |
참 |
거짓 |
숫자 |
0이 아닌 숫자 |
0 |
문자열 |
"abc" |
" " |
리스트 |
[1,2,3] |
[ ] |
튜플 |
(1,2,3,) |
( ) |
딕셔너리 |
{ "a" : "b" } |
{ } |
↑ 파이썬에서 대표적인 자료형
ticket =1
if ticket :
printf ( "4시 까지 입장 해주세요 " )
else :
printf ( "티켓을 구입 해주세요 " )
↑ ticket은 조건문이 된다.
비교 연산자
- 조건이 참인지 거짓인지 판단할때 자료형보다는 비교연산자를 많이 쓴다.
비교연산자 |
의미 |
x < y |
x가 y보다 작다 . |
x > y |
x가 y보다 크다 . |
x==y |
x와 y가 같다. |
x != y |
x와 y가 같지 않다. |
x >= y |
x가 y보다 크거나 같다. |
x <= y |
x가 y보다 작거나 같다. |
>>> A = 10
>>> B = 5
>>> A > B
True
↑ A > B 라는 조건문을 실행할 때 그 결과가 참이므로 True를 리턴해준다.
A < B
False
A == B
False
A != B
True
↑ 상황에따라 조건문에 변화를 줄 수 있다.
논리 연산자
- 참과 거짓으로 표현이 가능 해야하고, 추상적인 내용은 허락되지 않는다.
# 그는 키가 180cm가 넘는다.( O )
# 그는 키가 크다.( X )
# 그는 사람이다.( O )
# 그는 잘생긴것 같다.( X )
연산자 |
설명 |
x or y |
x와 y 둘중에 하나만 참이면 참이다 |
x and y |
x와 y 모두 참이어야 참이다. |
not x |
x가 거짓이면 참니다. |
↑ 비교 연산자와 논리 연산자를 이용한 조건문
# 티켓과 인원이 같거나 티켓이 인원보다 많다면 입장이 가능하다.
# or 은 둘 중 하나만 참이면 참이된다.
파이썬만의 독특한 형태
- 파이썬은 다른 프로그래밍 언어에서 쉽게 볼수 없는 재미있는 조건문이 있다.
in |
not in |
x in 리스트 |
x not in 리스트 |
x in 튜플 |
x not in 튜플 |
x in 문자열 | x not in 문자열 |
↑ in 을 " ~ 안에 " 라는 의미로 보면 좀더 접근하기 쉽다.
>>> 1 in [1, 2, 3]
True
>>>1 not in [1, 2, 3]
False
↑ 1이 [1, 2 ,3]이라는 리스트 안에 있는가? 참 없는가? 거짓
>>>' a ' in ( ' a ', ' b ', ' c ' )
True
>>>' a ' not in ' apple '
False
↑ 튜플과 문자열에도 적용할 수 있다.
↑ in 을 활용한 조건문
↑ pass를 이용하면 조건이 참이여도 아무런 동작도 하지 않는다.
다양한 조건을 표현하기 위한 elif
- if와 else만으로는 다양한 조건문을 표현하는데 한계가 있다.
# 티켓이 있으면 영화를 볼 수 있다. 티켓은 없지만 쿠폰이 있다면 영화를 볼 수 있다. 티켓과 쿠폰 모두 없다면 영화를 볼 수 없다.
elif문 기본구조
↑ elif의 갯수에는 제한이 없다. 조건을 계속 넣어줄 수 있다.
↑ elif를 사용하지 않고 if ~else만을 사용한 조건문
↑ elif를 사용한 조건문
# 간편하고 가독성이 좋다.
참고 --------------------------------------------------------
- 점프 투 파이썬
[ Python ] 반복문 for문 (0) | 2017.03.21 |
---|---|
[ Python ] 반복문 while (0) | 2017.03.17 |
좀 알려주세요 현기증 난단 말이에요..