본문 바로가기
[파이썬]/자료형

[파이썬][자료형] 불리언

by sung min_Kim 2023. 11. 5.
불리언

참 또는 거짓을 나타내는 자료형

 


불리언

 

 불리언은 파이썬에서 제공하는 자료형 중 하나로, 참(True)과 거짓(False) 두 가지 값만 가질 수 있다. 

 불리언은 조건문, 반복문, 비교 연산 등에서 매우 중요한 역할을 수행하며, 프로그램의 흐름을 제어하는 데 사용된다.

 


 불리언 연산 및 출력

 

 파이썬에서의 불리언 표현방법으로는 크게 참과 거짓, 비교 연산, 논리 연산, bool() 함수를 통해 값을 표현한다.

 

· 파이썬에서는 참으로 True를, 거짓으로 False를 반환다. 첫 문자가 대문자인 것에 유의하도록 하자.
print(True) # True 반환
print(False) # False 반환

 

· 파이썬에서는 True가 정수 1로, False가 0으로 취급된다.
print(1 == True) # True 반환
print(1 != True) # False 반환

print(0 == False) # True 반환
print(0 != False) # False 반환

 

 

 · bool() 함수를 사용하여 숫자를 불리언 값으로 변환할 경우, 숫자 0은 False로, 0이 아닌 모든 양수와 음수는 True로 간주된다.

 (즉, 0만 False, 0 이외의 양수와 음수는 True로 간주)

print(bool(1))  # True 반환
print(bool(0))  # False 반환
print(bool(-1)) # True 반환

 

 · 비교 연산은 두 개의 값을 비교하는 비교 연산자를 사용하여 불리언 값을 반환한다.

print(5 >= 1) # True 반환
print(5 == 5) # True 반환
print(5 <= 1) # False 반환

 

 · 논리 연산은 and, or, not, in 등의 논리 연산자를 사용하며, 불리언 값을 연산하여 불리언 값을 반환한다.

 - * and 논리 연산자 : 주어진 조건 중 둘 다 거짓일 경우, False를 반환하고 동작을 수행하지 않는다.
a = 6
b = 3
print(a >= b and b == a) # False 반환

 

 - * or 논리 연산자 : 주어진 조건 중 어느 하나라도 참일 경우, True를 반환하며, 두 조건이 모두 거짓일 경우에만 False를 반환한다.
a = 6
b = 3
print(a >= b or b == a) # True 반환
print(a <= b or b != a) # True 반환
print(a <= b or b == a) # False 반환

 

 or 논리 연산자는 몇 가지 주의해야 할 점이 있는데, 이에 대해 알아보자.

 

  • 단락평가
 or 논리 연산자는 왼쪽에 위치한 피연산자부터 평가되며 True일 경우 오른쪽 피연산자는 평가되지 않는다.
이것을 단락 평가라고 하며, or 연산의 특성에 따른 것이다.
# test 메소드에서는 print와 return 동작을 수행.
def test():
    print("This is a test function") # This is a test function 출력
    return True

# test 메소드가 True를 반환했기 때문에 print 동작 수행.
if False or test(): 
    print(" Short-circuit evaluation") # Short-circuit evaluation 출력

 

  • 값 반환
 or 논리 연산자는 단순히 Ture, False를 반환하는 것이 아니라, 첫 번째 True로 평가되는 값을 반환한다.
print(0 or 3)         # 3 출력
print([] or 'Hello')  # Hello 출력
print({'A' or {}}     # A 출력

 

  • 연산자 우선순위
 or 논리 연산자는 파이썬에서 가장 낮은 우선 순위를우선순위를 가진다. 따라서  여러 연산자와 함께 사용할 경우 소괄호 ()를 사용하여 우선순위를 명확히 표시해 주는 게 좋다.
print(True or False and False)  # True 반환
print((True or False) and False)  # False 반환

 

 

· not, in 연산자 : not 연산자는 불린 값의 반대를 반환한다. in 연산자는 특정 값이 시퀀스 안에 존재하는지 확인하고 결과를 불린 값으로 나타내는 연산자이다.
a = [1, 2, 3]

1 in a # Ture 반환
4 in a # False 반환

4 not in a # Ture 반환
1 not in a # False 반환

 


 

파이썬에서의 불리언에 대해 알아보았다.

 

불리언은 참과 거짓만을 반환하며 자바와는 다르게 첫 문자는 대문자를 사용한다. 

 

정수 1은 True로 0은 False로 불리언 값을 반환하며, bool 함수를 적용할 경우 양수, 음수는 True를, 0은 False를 반환한다.

 

여러 연산자를 통해서도 불리언 값을 반환하였다.

 

그 중, and 논리 연산자는 모든 피연산자가 True일 경우에만 True를 반환하고, or 연산자의 경우에는 하나라도 True일 경우 True를 반환하였다. 이는 단락평가라는 or 연산자의 특성이라고 한다.

 

불리언은 조건, 제어, 반복 등 여러 알고리즘에서 정말 핵심이라 볼 수 있기에 논리적으로 흐름을 읽는 연습이 충분히 필요할 것이다.

 

다음 글에서는 집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형인 집합, set에 대해 알아보도록 하자.

'[파이썬] > 자료형' 카테고리의 다른 글

[파이썬][자료형] 집합  (0) 2023.11.05
[파이썬][자료형] 딕셔너리  (0) 2023.11.05
[파이썬][자료형] 배열  (0) 2023.11.04
[파이썬][자료형] 문자형  (0) 2023.11.04
[파이썬][자료형] 숫자형  (0) 2023.11.03