Python/포스팅

파이썬 식별 연산자 (Identity Operators)

짜집퍼박사(짜박) 2023. 11. 30. 00:45

파이썬에서는 식별 연산자를 사용하여 객체의 식별성(Identity)을 비교할 수 있습니다. 식별 연산자는 객체의 메모리 주소를 기반으로 비교를 수행합니다. 주로 변수나 객체가 동일한 객체를 참조하는지 여부를 확인하는 데 사용됩니다. 파이썬에서는 두 가지 식별 연산자가 있습니다.

 

1. is 연산자

두 변수가 동일한 객체를 참조하는지 여부를 확인합니다. 두 변수가 같은 메모리 위치를 가리키면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

a = [1, 2, 3]
b = a
c = [1, 2, 3]

result1 = a is b  # True, a와 b는 동일한 객체를 참조
result2 = a is c  # False, a와 c는 다른 객체를 참조

 

2. is not 연산자

두 변수가 다른 객체를 참조하는지 여부를 확인합니다. 두 변수가 다른 메모리 위치를 가리키면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

x = [1, 2, 3]
y = [1, 2, 3]
z = x

result1 = x is not y  # True, x와 y는 다른 객체를 참조
result2 = x is not z  # False, x와 z는 동일한 객체를 참조

 

주의: is와 is not 연산자는 변수 값의 동등성(equality)을 확인하는 것이 아니라, 변수가 동일한 객체를 참조하는지 여부를 확인합니다. 값의 동등성을 확인하려면 비교 연산자(== 또는 !=)를 사용해야 합니다.

 

With ChatGPT