“not(True) in [False, True]” 은 왜 False인가요?

조회수 2223회

False in [False, True] = True 인데 왜 not(True) in [False, True] = False

인가요? not(True)False면서?

1 답변

  • 좋아요

    1

    싫어요
    채택 취소하기

    operator의 우선순위 때문에 그렇습니다. innot보다 우선순위가 높기 때문이지요.

    (not True) in [False, True] 와 같이 처리된다고 생각하신 것 같은데

    실제로는 not (True in [False, True]) 와 같이 처리되기 때문입니다.

    그리고 not은 함수가 아니기 때문에 not()와 같이 쓰시는 건 권장하지 않습니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)