파이썬/개념

True와 False, in, 바다코끼리 연산자

thpop 2025. 2. 24. 09:52
반응형

만약 조건문에서 확인할 요소가 불리언 타입이 아닐 때, True와 False를 구분하는 방법에 대해서 알아보자.

 

아래와 같은 경우 불리언 값 False로 취급하고, 이외의 경우 True로 간주된다.

 

불리언 False \
null none
정수 0 0
부동소수점 숫자 0.0 0.0
빈 문자열 ' ' 
빈 리스트 [ ]
빈 튜플 ( )
빈 딕셔너리 { }
빈 셋 set( )

한 변수에 여러 값을 비교할 필요가 있을 경우, 멤버십 연산자(membership operator)인 in을 사용할 수 있다.

 

예시로 어떤 문자가 모음(vowel)인지 확인하는 프로그램이 있다고 해 보자.

>>> vowel = 'aeiou'
>>> letter = 'a'
>>> letter in vowel
True
>>> if letter in vowel:
··· 	print(letter,'is a vowel')
··· else:
···		print(letter,'is not a vowel')
···
a is a vowel

 

멤버십 연산자 in은 리스트, 튜플, 딕셔너리, 셋 등의 경우에도 얼마든지 사용 가능하다.


파이썬의 3.8버전에서 바다코끼리 연산자 기능이 추가되었다.

 

형식은 다음과 같다.

name := expression

 

이름이 바다코끼리 연산자인 이유가 := 모양이 바다코끼리를 닮았다 하여 붙은 이름이다.

 

바다코끼리 연산자의 기능은 다음과 같다.

 

일반적으로 할당과 테스트는 아래의 코드와 같이 두 단계를 거쳐 이루어진다.

>>> a = 300
>>> b = 'sigh' * 40
>>> difference = a - len(b)
>>> if difference >= 0:
··· 	print('fitting sigh')
··· else:
··· 	print('went over by',abs(difference))
··· 
fitting sigh

 

바다코끼리 연산자를 이용하면 이 테스트를 한 단계로 줄일 수 있다.

>>> a = 300
>>> b = 'sigh' * 40
>>> if difference := a - len(b) >= 0:
··· 	print('fitting sigh')
··· else:
··· 	print('went over by',abs(difference))
··· 
fitting sigh
반응형