Python에서 문자열을 비교할 때 "is"와 "==의 차이점을 이해하는 것이 중요합니다. " 운영자. 다음 질문은 혼란을 강조하고 통찰력 있는 답변을 제공합니다.
질문:
"문자열이 비어 있는지 확인하기 위해 'is not'을 사용할 때 무한 루프가 발생했지만 ' !='가 올바르게 작동했습니다. 왜요?"
답변:
"is" 연산자는 두 개체가 메모리에서 정확히 동일한 인스턴스를 참조하는지 확인하는 반면 "=="는 값이 같은지 확인합니다. . 문자열을 비교할 때 일반적으로 "=="를 사용해야 합니다. 문자열과 같은 대부분의 내장 Python 객체는 이러한 연산자와 일관되게 동작하기 때문입니다.
int 또는 부울 비교를 위한 연산자 선택에 관한 지침은 다음과 같습니다.
int에 대해 주목해야 할 중요한 최적화는 성능상의 이유로 작은 정수를 "is"와 비교할 수 있지만 이 동작에 의존해서는 안 된다는 것입니다.
부울 비교의 경우 "if x == True" 대신 "x"를 사용하고 None의 경우 "== None" 대신 "is None"을 사용하는 것이 좋습니다.
요약하면 "=="는 문자열, 정수 및 부울 비교의 기본 선택이 되어야 하며, "is"는 객체 ID가 관련된 특정 경우에 예약되어 있습니다.
위 내용은 Python 문자열 비교: '!='가 성공하는데 'is not'이 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!