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로 평가된다.