boolean 자료형은 참, 거짓 논리를 표현하기 위한 자료형이다.
파이썬의 boolean 자료형은 특정 조건이 참인 경우 True
, 거짓인 경우 False
로 값을 가진다.
Truthy 란, True
는 아니지만 True
로 평가되는 값들을 의미한다.
Falsy 란, False
는 아니지만 False
로 평가되는 값들을 의미한다.
파이썬은 자료형마다 Truthy와 Falsy를 나타내는 상태가 정의되어 있는 경우가 있다.
숫자 | 0인 경우 False, 이외의 경우 True로 평가 된다. |
---|---|
문자열 | 값이 비어있으면(””) False, 비어있지 않으면 True로 평가된다. |
리스트 | 빈 리스트이면([ ]) False, 비어있지 않으면 True로 평가된다. |
튜플 | 튜플이 비어있으면(( )) False, 비어있지 않으면 True로 평가된다. |
딕셔너리 | 딕셔너리가 비어있으면({ }) False, 비어있지 않으면 True로 평가된다. |
None | None은 False로 평가된다. |
stack = [1,2,3,4]
while stack:
stack.pop()
stack 변수는 리스트이다.
따라서 True / False가 들어가야 하는 자리에 이 리스트가 들어가게 되면 비어있지 않을 때 True로,
비어있을 때 False로 평가된다.
따라서 위의 코드에서는 while문의 조건에 stack 변수를 넣어주면 stack에 원소가 남아있으면
True로 평가되므로 계속 반복하고, 원소가 더 이상 없다면 False로 평가되어 while 루프를 빠져나오게 된다.