일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 구글애널리틱스
- 파이썬정규표현식
- GA공부
- 파이썬내장함수
- GA설치
- GA
- 마케팅
- 신용카드추천
- 파이썬
- GA4
- GA가이드
- 구글애널리틱스공부
- 구글애널리틱스강의
- 국민내일배움카드
- 유튜브광고
- 구글애널리틱스4
- 파이썬공부
- 메이크샵
- 페이스북광고
- 파이썬함수
- 파킹통장
- 카페24
- 유튜브
- 책추천
- 파이썬프로그래밍
- 파킹통장추천
- 구글애널리틱스가이드
- GA강의
- 구글ads
- 파이썬문자열
- Today
- Total
정리왕
파이썬 if문 2 (조건문이란 무엇인가?) 본문
조건문이란 무엇인가?
if 조건문에서 '조건문'이란 참과 거짓을 판단하는 문장을 말한다.
앞에서 살펴본 택시 예제에서 조건문은 money가 된다.
>>> money = True
>>> if money:
money는 True이기 때문에 조건이 참이 되어 if문 다음 문장을 수행한다.
비교 연산자
이번에는 조건문에 비교 연산자 ( <, >, ==, !=, >=, <= )를 쓰는 방법에 대해 알아보자.
다음 표는 비교 연산자를 잘 설명해 준다.
비교 연산자 | 설명 |
x < y | x가 y보다 작다 |
x > y | x가 y보다 크다 |
x == y | x와 y가 같다 |
x != y | x와 y가 같지 않다 |
x >= y | x가 y보다 크거나 같다 |
x <= y | x가 y보다 작거나 같다 |
이제 위 연산자를 어떻게 사용하는지 알아보자.
>>> x = 3
>>> y = 2
>>> x > y
True
x에 3을, y에 2를 대입한 다음에 x > y라는 조건문을 수행하면 True를 돌려준다. x > y 조건문이 참이기 때문이다.
>>> x < y
False
위 조건문은 거짓이기 때문에 False를 돌려준다.
>>> x == y
False
x 와 y는 같지 않다. 따라서 위 조건문은 거짓이다.
>>> x != y
True
x와 y는 같지 않다. 따라서 위 조건문은 참이다.
앞에서 살펴본 택시 예제를 다음처럼 바꾸려면 어떻게 해야 할까?
만약 3000원 이상의 돈을 가지고 있으면 택시를 타고 그렇지 않으면 걸어 가라. |
위 상황은 다음처럼 프로그래밍할 수 있다.
>>> money = 2000
>>> if money >= 3000:
print("택시를 타고 가라")
else:
print("걸어 가라")
걸어 가라
money >= 3000 조건문이 거짓이 되기 때문에 else 문 다음 문장을 수행하게 된다.
and, or, not
조건을 판단하기 위해 사용하는 다른 연산자로 and, or, not이 있다.
각각의 연산자는 다음처럼 동작한다.
연산자 | 설명 |
x or y | x와 y 둘 중에 하나만 참이면 참이다. |
x and y | x와 y 모두 참이어야 참이다. |
not x | x가 거짓이면 참이다. |
다음 예를 통해 or 연산자의 사용법을 알아보자.
돈이 3000원 이상 있거나 카드가 있다면 택시를 타고 그렇지 않으면 걸어 가라. |
>>> money = 2000
>>> card = True
>>> if money >= 3000 or card:
print("택시를 타고 가라")
else:
print("걸어 가라")
택시를 타고 가라
money는 2000이지만 card가 True이기 때문에 money >= 3000 or card 조건문이 참이 된다.
따라서 if문 다음 "택시를 타고 가라" 문장이 출력된다.
x is s, not in s
더 나아가 파이썬은 다른 프로그래밍 언어에서 쉽게 볼 수 없는 재미있는 조건문을 제공한다.
바로 다음과 같은 것들이다.
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, 2, 3]이라는 리스트 안에 1이 있는가?' 조건문이다.
1은 [1, 2, 3]안에 있으므로 참이 되어 True를 돌려준다.
두번째 예는 '[1, 2, 3] 리스트 안에 1이 없는가?' 조건문이다.
1은 [1, 2, 3] 안에 있으므로 거짓이 되어 False를 돌려준다.
다음은 튜플과 문자열에 적용한 예이다. 각각의 결과가 나온 이유는 쉽게 유추할 수 있다.
>>> 'a' in ('a', 'b','c')
True
>>> 'j' not in 'python'
True
이번에는 우리가 계속 사용해 온 택시 예제에 in을 적용해 보자.
만약 주머니에 돈이 있으면 택시를 타고, 없으면 걸어가라. |
>>> pocket = ['paper', 'cellphone', 'money']
>>> if 'money' in pocket:
print("택시를 타고 가라")
else:
print("걸어 가라")
택시를 타고 가라
[ 'paper', 'cellphone', 'money'] 리스트 안에 'money'가 있으므로 'money' in pocket은 참이 된다.
따라서 if문 다음 문장이 수행된다.
숙제>
'주머니에 카드가 없다면 걸어가고, 있다면 버스를 타고 가라' 는 문장을 조건문으로 만들어 보자.
조건문에서 아무 일도 하지 않게 설정하고 싶다면?
가끔 조건문의 참/거짓에 따라 실행할 행동을 정의할 때, 아무런 일도 하지 않도록 설정하고 싶을 때가 있다.
다음 예를 보자.
주머니에 돈이 있으면 가만히 있고 주머니에 돈이 없으면 카드를 꺼내라. |
이럴 때 사용하는 것이 바로 pass이다. 위 예를 pass를 적용해서 구현해 보자.
>>> pocket = ['paper', 'money', 'cellphoe']
>>> if 'money' in pocket:
pass
else:
print("카드를 꺼내라")
>>>
pocket 리스트 안에 money 문자열이 있기 때문에 if문 다음 문장인 pass가 수행되고 아무 결과값도 보여 주지 않는다.
'6.개발 > 파이썬 공부하기' 카테고리의 다른 글
파이썬 while 문 1 (0) | 2020.11.29 |
---|---|
파이썬 if문 3 (elif) (0) | 2020.11.29 |
파이썬 조건문 if 1 (if문이란?) (0) | 2020.11.29 |
파이썬 변수 (0) | 2020.11.29 |
파이썬 불 자료형 1 (0) | 2020.11.29 |