본문 바로가기
SK 행복성장캠퍼스/Python 기초

0901_2일차_Python07_논리연산자

by NickNuma 2020. 9. 3.

논리연산자문장에 따라 논리형(bool)의 결과 값이 나옵니다.
이는 조건문에 자주 사용될 수 있습니다.

"""
    논리 연산자
        ==> 논리값(True/False)으로 연산
        ==> 목적 => 조건이 여러개인 경우 사용

        가. and  (그리고)

        나. or   (또는)

        다. not  (부정)

"""

 


먼저 and모든 조건값이 True일 때 ==> True 값을 반환하고
나머지의 경우에는 ==> False 값을 반환합니다.

#1. a and b ==> 그리고
print(True and True)    # True
print(True and False)   # False
print(False and True)   # False
print(False and False)  # False
print("="*40)

# 질문?   :   4가 3보다 크고, 5와 6이 같은가?
print(4 > 3 and 5 == 6) # False
#print(4 > 3 and 5 < 6)  # True
print("="*40)

# 질문 2  :   n변수 값이 5의 배수이고 n2변수값보다 n변수 값이 큰가?*****
n = 10
n2 = 5
print(n % 5 == 0 and n > n2)    # True
print("="*40)


 


or하나라도 True값을 나타내면 ===> 결과값으로 True를 반환하고
모든 값이 False일 때 ===> False 값을 반환합니다.

#2. a or b ==> 또는
print(True or True)    # True
print(True or False)   # True
print(False or True)   # True
print(False or False)  # False
print("="*40)

#질문 3   :   4가 2의 배수이거나 5가 2보다 작은가?
print(4 % 2 == 0 or 5 < 2)  # True
print("="*40)


 


not부정의 값을 도출합니다.
True 값은 ===> False
False 값은 ===> True값을 반환합니다.

#3. not ==> 부정
print(not True)     # False
print(not False)    # True


 


그리고 중요한 것이 Python에서는
정수 0,  빈 문자열 " ",   빈 리스트 [ ],   빈 딕셔너리 { }, 그리고 None의 경우에도 False 값을 갖는다는 것입니다.
(조건문에서 사용)
그리고 나머지 데이터는 모두 True로 처리됩니다.

"""
   * 심화    *****
        True/False만 논리값으로 처리되는게 아니다.
        일반 데이터도 논리값으로 처리된다.

        1) False로 처리하는 데이터  (***** x 100)
            0       :   정수 0
            ""      :   빈 문자열
            []      :   빈 리스트
            {}      :   빈 딕셔너리
            None    :   None, Null

        2) 나머지 데이터는 모두 True로 처리된다.

"""
print( not 0)       #True
print( not "")      #True
print( not [])      #True
print( not {})      #True
print( not None)    #True
print("="*40)
print( not 10)                   #False
print( not "aa")                 #False
print( not [10, 20])             #False
print( not {"name" : "Hong"})    #False


논리 연산자와 논리 데이터형에 대한 글은 여기서 마치고
다음 시간에는 멤버십 연산자에 대해 알아보도록 하겠습니다.

고롬 이만~

반응형

댓글