>source

개인 프로젝트 중에 두 변수가 동일한지 평가해야 했지만 없음은 아닙니다. 따라서 조건은 다음과 같아야 합니다.진실둘 다 같으면(a=5, b=5), 다른 경우에는 그렇지 않거나 둘 다 None(a=None, b=None)이면 다음과 같아야 합니다.거짓

그래서 통역사를 입력했습니다a== b는 None이 아닙니다.그리고 내가 원하는 행동을 했다.

Python 3.9.9 (tags/v3.9.9:ccb0e6a, Nov 15 2021, 18:08:50) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> a= None
>>> b= None
>>> a== b is not None
False
>>> a= 5
>>> a== b is not None
False
>>> b= 5
>>> a== b is not None
True
>>>

하지만 조건 평가의 특별한 경우(예:x는 없음이 아닙니다.그 의미x는 없음) ? 아니면 파이썬이 그것을 평가하는 일반적인 방법일 수도 있습니다.

정상적으로 평가한다면 먼저 다음을 확인하기 때문입니다.ㄱ== ㄴ, 다음과 비교하십시오.없음이 아닙니다결과는 항상진실하지만 실제로 테스트해보면 동작이 다릅니다. 또한 저는 5년 동안 Python 프로그래밍을 하면서 이 상태를 본 적이 없습니다. 그래서 저는 매우 드물다는 것을 알았습니다. 따라서 이미 문서화되었는지 확실하지 않습니다.

  • 답변 # 1

    이것들은 연결 비교. 정확히다음과 같습니다.

    a== b and b is not None
    

    각 경우에.

    조금 더 부드러운 소개 가능 여기:

    이것은 (내 경험상) 다음과 함께 가장 일반적으로 사용됩니다.<또는>, 예를 들어

    # reads like a normal math expression
    if 0 < x < 10:
        print('valid range')  # or whatever.
    

  • 이전 PHP를 사용하여 Curl에서 .PEM 및 .KEY를 문자열로 전달
  • 다음 Google 스프레드시트 차트에서 세로 축 자동 크기 조정