[Python] is와 ==의 차이

김가람휘·2022년 2월 18일
0

Python

목록 보기
10/14

==

  • 파이썬에서 "=="은 값이 같을 경우 True를 반환합니다.
  • 참조가 같거나 달라도 상관없이 오직 "값"만 같은지 확인합니다.

is

  • 파이썬에서 "is"는 참조가 같을 경우 True를 반환합니다.
  • 같은 참조를 가지고 있다면 값도 같습니다.
  • 변수가 가리키고 있는 객체(주소)가 같은지를 확인할 때 is를 사용합니다.
a = 1
b = a
c = 1
d = 2

if a == b: # True
    print('True')
else:
    print('False')

if a == d: # False
    print('True')
else:
    print('False')

if a is b: # True
    print('True')
else:
    print('False')

if a is c: # True
    print(hex(id(a))) # 0x1d074736930
    print(hex(id(c))) # 0x1d074736930
    print('True')
else:
    print('False')

if a is d: # False
    print('True')
else:
    print(hex(id(a))) # 0x1d074736930
    print(hex(id(d))) # 0x1d074736950
    print('False')

if a: # True
    print('True')
else:
    print('False')

0개의 댓글