파이썬의 논리 연산자인 and, or, not은 불리언(부울) 연산자라고도 불립니다. 이 연산자들은 조건문과 반복문에서 참(True)과 거짓(False)을 판단하는 핵심 도구로 사용됩니다.
and와 or 연산자는 참 또는 거짓으로 평가되는 두 개의 피연산자가 필요한 반면, not 연산자는 하나의 피연산자만 필요합니다.
1. and 연산자 — 모두 참일 때만 True
불리언 and 연산자는 두 피연산자가 모두 참일 때만 True를 반환합니다. 하나라도 거짓이면 결과는 False가 됩니다.
>>> a=50
>>> b=25
>>> a>40 and b>40
False
>>> a>100 and b<50
False
>>> a==0 and b==0
False
>>> a>0 and b>0
True
위 예제에서 a>40 and b>40은 b>40이 거짓이므로 전체 결과가 False입니다. 반면 마지막 줄처럼 두 조건이 모두 참일 때만 True가 반환됩니다.
2. or 연산자 — 하나라도 참이면 True
불리언 or 연산자는 피연산자 중 하나라도 참이면 True를 반환합니다. 두 피연산자가 모두 거짓일 때만 False가 됩니다.
>>> a=50
>>> b=25
>>> a>40 or b>40
True
>>> a>100 or b<50
True
>>> a==0 or b==0
False
>>> a>0 or b>0
True
a>40 or b>40의 경우 a>40이 참이므로 b>40이 거짓이라도 전체 결과는 True입니다.
3. not 연산자 — 결과를 반전
not 연산자는 피연산자가 거짓 표현식이면 True를 반환하고, 참이면 False를 반환합니다. 즉, 불리언 값을 반전시키는 역할을 합니다.
>>> a=10
>>> a>10
False
>>> not(a>10)
True
a>10은 거짓(False)이지만, not을 붙이면 그 반대인 True가 됩니다.
불리언 연산자 요약
| 연산자 | 필요한 피연산자 수 | True를 반환하는 조건 |
|---|---|---|
and | 2개 | 두 피연산자가 모두 참일 때 |
or | 2개 | 피연산자 중 하나라도 참일 때 |
not | 1개 | 피연산자가 거짓일 때 |
이 세 가지 불리언 연산자를 잘 활용하면 복잡한 조건도 간결하고 읽기 쉽게 표현할 수 있습니다.