>  기사  >  백엔드 개발  >  Python의 `and` 및 `or` 연산자는 항상 부울 값을 반환합니까?

Python의 `and` 및 `or` 연산자는 항상 부울 값을 반환합니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-07 16:49:03193검색

Do Python's `and` and `or` Operators Always Return Boolean Values?

Python의 연산자 동작 이해

Python에서 and 및 or 연산자는 조건부 연산 및 평가에서 중요한 역할을 합니다. 일반적인 오해는 이러한 연산자가 항상 부울 값(True 또는 False)을 반환한다는 것입니다. 그러나 이러한 연산자에 대한 진실은 더 미묘합니다.

2007년 동영상의 주장과 달리 and 및 or 연산자는 모두 순수한 부울이 아닌 자신이 연산하는 두 값 중 하나를 반환합니다. 이 동작은 예를 통해 설명할 수 있습니다.

>>> 0 or 42
42
>>> 0 and 42
0

보시다시피 0 또는 42는 첫 번째 피연산자(0)가 False이고 연산이 두 번째 피연산자의 값을 반환하기 때문에 42를 반환합니다. 마찬가지로 0과 42는 첫 번째 피연산자(0)가 False이므로 0을 반환하고 연산은 첫 번째 피연산자의 값을 반환합니다.

반대로 not 연산자는 항상 순수한 부울 값을 반환합니다.

>>> not 0
True
>>> not 42
False

이 동작은 세 연산자 사이의 차이점을 강조합니다.

  • 및/또는 부울 값이 아닐 수 있는 피연산자 중 하나의 값을 반환합니다.
  • True 또는 False 부울 값을 일관되게 반환하지 않습니다.

조건문 및 평가와 관련된 정확하고 효율적인 Python 코드를 작성하려면 이러한 연산자 동작을 이해하는 것이 필수적입니다.

위 내용은 Python의 `and` 및 `or` 연산자는 항상 부울 값을 반환합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.