Programming 💻/Python
[Python] is 와 == 연산자의 차이점 정리
킹우현
2023. 9. 6. 13:04
파이썬에서 같은지 다른지를 확인하는 데 사용하는 것이 == 기호와 is 키워드입니다.
1) 값이 같은지 확인하는 '=='
A == B : A와 B의 값이 같은 경우 True를 반환합니다. A와 B의 값이 다른 경우 False를 반환합니다.
'=='는 A와 B가 참조가 같든 다르든 상관없이 오직 "값"이 같은지만 확인합니다.
* 번외로 != 는 A != B 일 때
A와 B의 값이 다른 경우 True를 반환하고
A와 B의 값이 같은 경우 False를 반환합니다.
2) 참조가 같은지 확인하는 'is'
A is B : A와 B의 참조가 같은 경우 True 를 반환합니다. A와 B의 참조가 다른 경우 False를 반환합니다.
'is'는 참조가 같은지 확인을 합니다. "참조가 같다"는 것은, "같은 객체를 가리키고 있다"와 동일한 뜻입니다. 즉, A와 B가 가리키는 객체가 같으면 True 인 것입니다.
이렇게, 변수가 가리키고 있는 객체(주소)가 같은지를 확인할 때 is 를 사용합니다.
3) 요약
값이 같은지 확인하려면 == 을 사용하시면 되고, 참조가 같은지를 확인하려면 is를 사용하시면 됩니다.
좀 더 자세히 정리하자면 값과 참조 둘 다 같은지를 알고 싶다면 is를 사용하고 참조는 달라도 되고 값만 비교하고 싶을 때는 ==, != 을 사용하면 됩니다.