is연산자와 == 연산자의 차임점?
파이썬에서 두 값을 비교할때는 '=='연산자를 사용하며 비교를 하게된다.
이는 두개의 값이 같은지 비교를 하는 연산자이기 때문이다.
is연산자 역시 두 값을 비교할때 사용을 한다.
그렇다면 두 연산자의 차이점이 무엇일까?
==연산자란?
'=='연산자는 비교연산자(Comparing Operator)로 두 값이 같은지를 비교하여 같으면 bool 타입의 True와 False를 반환하는 연산자이다.
즉, '==' 연산자는 두 값만 비교를 한다!
👉 등호 연산자가 뭔지 모르겠다면 이 글을 읽어보자!
[Python] 파이썬의 연산자
연산자란? Python에서 연산자란 특정한 작업을 하기 위해서 사용하는 기호를 말한다. 연산자는 값을 계산하거나 평가하기 위한 필요한 부호이고 아래와 같은 연산자들이 존재한다. 산술 연산자(Ar
slowprogramer.tistory.com
is 연산자란?
'is'연산자는 식별 연산자(Identify Operator)로 두 값의 객체가 같은지 비교를 하여 같으면 bool 타입의 True와 False를 반환하는 연산자이다.
즉, 'is' 연산자는 객체를 비교한다.
의문점
3 is 3 # True
x = 3
y = 3
x is y # True
객체를 비교한다면 'x is y'의 결과가 False여야 하는거 아닌가?
이 의문점을 해소하기 위해서는 파이썬의 변수 할당 개념을 알아야 한다!
파이썬은 심볼릭 네임을 가지고 변수를 선언한다.
즉, 3이라는 값을 가진 객체가 있고 x는 그것을 가리키고 있는것이고 y도 마찬가지다.
따라서 is연산이 True로 나오게 된것이다.
x = 3
y = 3.0
x is y #False
그래서 3끼리가 아닌 3과 3.0을 비교하면 False가 출력 된다.
요약
'=='연산자는 변수의 값을 비교하는 연산을 하고 'is'연산자는 변수가 가르키고 있는 객체를 비교하는 연산을 한다!
참고 문서
04) 비교 연산자와 is 연산자
[TOC] ## 비교 연산자 파이썬에서 두 값을 비교할 때 `==` 연산자를 사용합니다. 이는 값이 같은지를 비교합니다. 만약 두 객체가 동일한 주소에 할당된 객체임을 비교하…
wikidocs.net
'프로그래밍 > Python' 카테고리의 다른 글
[Python - 3 ] 입력과 출력 (0) | 2024.04.01 |
---|---|
[Python - 2 ] 변수, 자료형, 메소드 그리고 비교 및 논리 연산자 (0) | 2024.04.01 |
[Python - 01 ] 기본 문법 (0) | 2024.04.01 |
[Python] 파이썬의 변수 저장 방식과 메모리 해제(Garbage Collector) (0) | 2024.03.29 |
[Python] 파이썬의 연산자 (0) | 2024.03.28 |