더북(TheBook)

4.2.10 불리언과 ‘not’의 이점을 활용한다

파이썬은 모든 객체를 True 혹은 False로 평가할 수 있다. 가령 파이썬의 모든 빈 컬렉션이나 None인 컬렉션을 불리언으로 테스트하면 False다. 코드는 문자열의 길이가 0인 것을 테스트하고 있다.

if len(my_str) == 0:
    break

하지만 다음과 같이 작성할 수도 있다.

if not my_str:
    break

이와 같은 불리언 비교는 일반적으로 다음 규칙을 따른다.

데이터가 존재하는 컬렉션이나 문자열은 True다. 0이 아닌 숫자도 마찬가지다.

길이가 0인 컬렉션이나 문자열은 False로 평가된다. 값이 0인 숫자나 None도 마찬가지로 False로 평가된다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.