로딩
요청 처리 중입니다...

파이썬 비교 연산자와 체이닝 완벽 정리 (bool 개념부터 if 조건문까지 한 번에 이해하기)

 파이썬 비교 연산자와 체이닝 완벽 정리 (bool 개념부터 if 조건문까지 한 번에 이해하기)

파이썬은 어떤 값을 조건 자리에 오면 그 값을 True인지 False인지 자동으로 판단한다. 내부적으로 bool로 변환해 참/거짓을 판단하며, 값 자체를 바꾸지 않고 해석만 하므로 자동 판단은 값의 내용 자체를 변경하지 않으며 bool 해석으로 판단한다.

False로 판단되는 값의 공통 기준은 대표적으로 False, 0, '', None이다. 이 값들은 판단 기준이 되는 내용이 없는 상태이며 파이썬이 거짓으로 취급해도 안전한 상태다. True로 판단되는 값의 기준은 값이 존재하고 비어 있지 않으며 아무것도 없지 않다는 점이다. 즉 0, '', None, False처럼 명확히 False로 정해진 경우를 제외하면 실제로 값이 있으면 True로 판단된다.

비교 연산자의 전체 종류를 한 번에 보면 1) 비교 연산자는 6개로 구성된다. 1 == 와 != 는 값이 같은지 판단하고, 같은지 다름을 판단하는 비교다. 2 < 와 > 는 순수한 크기 비교로, 크기만 비교하며 같은 경우는 포함하지 않는다. 3 <= 와 >= 는 경계 포함 크기 비교다. 비교 연산자의 역할은 한 문장으로 끝내면 두 값을 기준에 따라 비교해 참 또는 거짓이라는 판단 결과를 만드는 것이다. 핵심을 풀어서 보면 비교 연산자는 반드시 하나의 판단 결과를 만든다. 또한 비교 연산은 기존 값을 건드리지 않고 새로운 판단 결과를 만든다. 초보자가 이해하기 쉬운 방식은 두 값을 기준에 따라 비교해 참(True) 또는 거짓(False) 하나를 만든다는 것이다.

의미 기준으로 나누면 두 가지가 있다. 첫째, 값이 같은지 비교하는 동등 비교로 == 와 !=가 두 값의 동일 여부를 판단한다. 둘째, 값의 크기를 비교하는 대소 비교로 <, <=, >, >=가 두 값의 크기 관계를 판단한다. 읽는 방향은 항상 왼쪽에서 오른쪽이며, 비교의 주어는 왼쪽 값이고 기호는 왼쪽 값이 오른쪽 값과 비교해 어떤 상태인지를 나타낸다. 따라서 기본 공식은 '왼쪽 값이 오른쪽 값보다 어떤 상태인가?'이다. ==은 왼쪽 값이 오른쪽 값과 같은가, !=은 같은가가 아닌가, <은 왼쪽 값이 작은가, <=은 작거나 같은가, >은 큰가, >=은 크거나 같은가의 의미로 읽는다. 단, 읽는 방향을 오른쪽으로 바꿔 읽으면 안 된다. 비교의 기준은 오른쪽으로 바꿔 읽지 않는 것이 원칙이다.

반드시 구분해야 할 점은 대입과 비교의 차이다. = 은 대입으로 오른쪽에서 만들어진 값을 왼쪽 이름에 연결하는 연산이며, 오른쪽 값이 먼저 평가되고 왼쪽은 값을 저장하는 그릇일 뿐 판단을 하지 않는다. 반면 == 은 두 값이 같은지를 판단해 참 또는 거짓을 만들며 두 값을 비교하여 True 또는 False를 반환해 값은 바꾸지 않는다. 이 점은 초보자가 피해야 할 중요한 오해로, = 와 ==은 완전히 다른 역할을 한다는 점이다.

비교 연산의 기본 규칙으로는 첫째, 비교는 비교 기준이 있는 값들 사이에서만 가능하다. 모든 값이 서로 비교 가능한 것은 아니어서 비교 기준이 없으면 True/False가 아니라 에러가 발생한다. 둘째, 같은 타입 계열의 값끼리 비교하는 것이 원칙이다. 파이썬은 값을 비교할 때 먼저 타입 계열이 같은지 확인하고, 같을 때만 비교가 가능하다. 예외는 존재하지만 서로 다른 타입 계열은 대부분 비교할 수 없다. 셋째, 숫자 타입끼리는 자동으로 맞춰서 비교된다. 정수와 실수는 서로 비교 가능하며 값의 크기를 기준으로 판단한다. 숫자 비교에서는 타입 차이가 결과에 영향을 주지 않는다. 이처럼 파이썬은 값의 모양이나 의미를 추측하지 않고, 타입 계열이 같을 때만 비교 기준을 만든다.

# 파이썬bool # 파이썬체이닝 # 파이썬조건문 # 파이썬연산자정리 # 파이썬비교연산자 # 파이썬불리언 # 파이썬문법정리 # 파이썬기초문법 # 파이썬if문 # 파이썬초보자