2019년 12월 12일 목요일

파이썬, ==, is 의 차이





  • == 는 값을 비교 한다. 실제로 값을 비교해서 같은지 return을 돌려줌
  • is 는 reference를 비교한다. 두개가 같은 object인지를 비교함.   



그래서, is  로 비교하는 것은 object들을 비교할때는 유용하나,

== 으로 비교하는 것과 결과가 다를 수 있다.




a = [1,2,3]
b = a 
b is a # True
b == a # True

b = a[:] # slice operator로 다시 list를 생성
b is a  # False, 다른 object
b == a  # True, 다른 object이나 값이 같음. 
https://stackoverflow.com/questions/132988/is-there-a-difference-between-and-is?rq=1

댓글 없음:

댓글 쓰기