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

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

Patricia Arquette
Patricia Arquette원래의
2024-11-01 04:23:02934검색

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

(1 in [1,0] == True)의 거짓 평가

일반적인 프로그래밍 언어와 달리 Python은 비교를 사용하여 표현식을 평가합니다. 연산자 체인. 표현식(1 in [1,0] == True)에서 연산은 예상대로 구문 분석되지 않습니다.

표현식은 실제로 다음과 같이 해석됩니다.

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

이 평가는 다음과 같이 분류됩니다. into:

  • (1 in [1, 0]): 목록 [1, 0]에 1이 있으므로 True로 평가됩니다.
  • ([1, 0] == True): [1, 0]은 부울 값이 아닌 목록이므로 이는 False로 평가됩니다.

따라서 전체 표현식은 , 다음과 같이 평가됩니다.

True and False = False

이 예상치 못한 결과는 다른 언어와 비교하여 Python의 표현식 평가 차이를 강조합니다. 혼란을 피하기 위해 괄호를 사용하여 원하는 평가 순서를 지정하세요.

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

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

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