>  기사  >  백엔드 개발  >  Python에서 `(1 in [1,0] == True)`가 False로 평가되는 이유는 무엇입니까?

Python에서 `(1 in [1,0] == True)`가 False로 평가되는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-03 18:17:30837검색

Why Does `(1 in [1,0] == True)` Evaluate to False in Python?

해명: '(1 in [1,0] == True)'가 False로 평가되는 이유에 대한 미스터리

' (1 in [1,0] == True)' Python에서는 처음에는 직관에 반하는 것처럼 보일 수 있으며 True일 것으로 예상할 수 있는 경우 False로 평가됩니다. 이 수수께끼를 풀려면 Python 평가 프로세스의 내부 작동 방식을 조사해야 합니다.

흥미롭게도 Python은 이 표현식을 부울 값에 대한 간단한 확인이 아닌 일련의 비교로 해석합니다. 표현식의 실제 구조는 다음과 같습니다.

(1 in [1,0]) and ([1,0] == True)

첫 번째 표현식 '(1 in [1,0])'이 True를 반환하고 두 번째 표현식이 True를 반환하므로 이 비교 체인은 False로 평가됩니다. , '([1,0] == True)'는 False로 평가됩니다.

이러한 비교 연결 현상은 'a < b < c'는 다음과 같이 번역됩니다.

(a < b) and (b < c)

'b'를 두 번 중복 평가하지 않습니다.

복잡한 작업을 처리할 때 예기치 않은 결과를 방지하려면 Python 평가 동작의 이러한 측면을 이해하는 것이 중요합니다. 비교를 포함하는 표현입니다.

위 내용은 Python에서 `(1 in [1,0] == True)`가 False로 평가되는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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