-
[Python] is 와 ==의 차이점Engineering WIKI/Python 2019. 5. 30. 21:47
- is는 reference equality. 메모리 상의 두 object를 비교한다.(object 비교)
- 두 reference가 같은 object를 가리키는지 확인할 수 있다. (값 비교)
- **==**는 value equality. 값을 비교한다. 두 object가 같은 값을 가지는지 알 수 있다.
예시를 보자.
foo = 10 dir(foo) == dir(10) # True dir(foo) is dir(10) # False
- 파이썬에는 -5부터 256까지의 수가 캐싱되어 있어 이들 값을 가진 변수들은 같은 object로 간주된다는 것이다.
a = 256 b = 256 a == b # True a is b # True a = 257 b = 257 a == b # True a is b # False
'Engineering WIKI > Python' 카테고리의 다른 글
[Python] pip freeze (0) 2020.02.02 [Python] shutil 함수 (0) 2019.07.03 [Python] 객체와 인스턴스의 차이 (0) 2019.07.03 [Python] 파이썬2,3 동시사용 (0) 2019.07.02 [Python] string 모듈 (0) 2019.05.27 [Python] tkinter 사용 (0) 2019.02.14 [Python] 2.7 Encoding 에러 해결 (0) 2019.01.26 [Python] 엑셀 코드(xlsx 파일 만들기) (0) 2018.10.15