18. 파이썬 조건문 다 아시나요?

  • 네이버 블로그 공유하기
  • 카카오톡 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기

파이썬에 대해 꾸준히 공부하면서 포스팅을 이어 나가는 중입니다.
이번 제목이 ’18. 파이썬 조건문 다 아시나요?’ 인데 오해 없으시길 바랍니다.
욕하는 제목이 아니라 순번이 18 번째 라서 그리 된 것입니다.

파이썬 조건문 이란?

앞서 살펴본 if 조건문에서 조건문 이란건 참과 거짓을 판별하는 문장임을 확인했습니다.
택시를 타냐 마냐 하는 예문에서 조건문은 money 가 됩니다.

Python
>>> money = True
>>> if money:

파이썬 비교연산자

파이썬 조건문에 비교연산자를 사용하는 방법에 대해 살펴보겠습니다.
비교연산자는 <, >, ==, !=, >=, <= 가 있습니다.

  • a < b a 가 b 보다 작다
  • a > b a 가 b 보다 크다
  • a == b a 와 b 는 같다
  • a != b a 와 b 는 같지 않다
  • a >= b a 는 b 보다 크거나 같다
  • a <= b a 는 b 보다 작거나 같다

위의 비교연산자를 사용하는 방법은 아래와 같습니다.

Python
>>> a = 3
>>> b = 2
>>> a > b
True

a 에 3 을, b 에 2 를 대입한 후 a > b 라는 조건문을 수행하면 True 를 반환합니다.
당연히 3 이 2 보다 크므로 참이기 때문입니다.

Python
>>> a < b
False
>>> a == b
False

3 이 2보다 큰데 3 < 2 라고 조건문을 수행하면 거짓이기 때문에 False 를 반환하고
마찬가지로 3 == 2 라고 하면 3과 2는 같지 않기 때문에 False 를 반환합니다.

Python
>>> a != b
True

3 과 2 는 같지 않기 때문에 참으로 True를 반환하게 됩니다.
지난번 공부 할때 는 money = True 라고 했었는데
이번에는 ‘만약 돈이 4000원 이상이 있으면 택시를 타고 그렇지 않으면 걸어 가세요.’ 라는 문장으로 프로그래밍을 해보겠습니다

Python
>>> money = 3000
>>> if money >= 4000:
...     print("택시를 타고 가세요")
... else:
...     print("그냥 걸어 가세요")
...
그냥 걸어 가세요

위 처럼 money >= 4000 이라는 조건문이 거짓이기에 else 문 다음 문장을 수행해서 ‘그냥 걸어 가세요’ 라는 문장을 출력하게 됩니다.

and, or, not

조건을 판단하기 위해서 필요한 다른 연산자로 and, or, not 이 있습니다.

  • a or b a 와 b 둘 중에 하나만 참이어도 참
  • a and b a 와 b 둘 모두 참이어야 참
  • not a a 가 거짓이면 참

예를 통해서 사용법을 알아보겠습니다

“돈이 4000 원 이상 있거나 또는 카드가 있으면 택시를 타고 그렇지 않으면 걸어 가세요.”

Python
>>> money = 3000
>>> card = True
>>> if money >= 4000 or card:
...     print("택시를 타고 가세요")
... else:
...     print("그냥 걸어 가세요")
...
택시를 타고 가세요

위 예를 보면 money 는 3000 입니다. 그리고 card 는 True 입니다.
money >= 4000 or card 이기 때문에 둘 중 하나의 조건만 참이면 참이 됩니다.
따라서 if 문 다음 문장이 ‘택시를 타고 가세요’ 가 출력이 되는 것 입니다.

in, not in

다른 프로그래밍 언어에서는 쉽게 볼 수 없는 조건문입니다.

  • a in 리스트 a not in 리스트
  • a in 튜플 a not in 튜플
  • a in 문자열 a not in 문자열

영어에서 in 의 의미는 ~ 안에 라고 해석됩니다

Python
>>> 2 in [2, 4, 6]
True
>>> 'k' not in 'summer'
True

첫 번째는 리스트 [2, 4, 6] 안에 2 라는 숫자가 있는 지를 확인하는 조건문입니다. 2 가 리스트 안에 존재하므로 True 가 리턴 됩니다.
두 번째는 k 가 summer 안에 없는가 확인하는 조건문입니다. k 가 summer 에 없으므로 역시 참 True 가 리턴 됩니다.
리스트, 문자열, 튜플 다 마찬가지로 적용이 됩니다.

그럼 앞에 택시 예제에 대입해 보겠습니다.

“만약 주머니에 돈이 있으면 택시를 타고, 없으면 걸어 가세요”

Python
>>> pocket = ['paper', 'phone', 'money']
>>> if 'money' in pocket:
...     print("택시를 타고 가세요")
... else:
...     print("그냥 걸어 가세요")
...
택시를 타고 가세요

[‘paper’, ‘phone’, ‘money’] 리스트 안에 ‘money’ 가 존재하므로 참이 됩니다.
따라서 if 바로 뒤 문장이 출력 되게 됩니다.

이 포스팅은 ‘위키독스’ 의 ‘점프 투 파이썬‘ 전자책을 구매하여 독학하기 위한 자료로 작성했습니다.

18. 파이썬 조건문 다 아시나요

Leave a Comment