is與==的區別
is 用於判斷兩個變量引用對象是否爲同一個, == 用於判斷引用變量的值是否相等。
>>>a = [1, 2, 3]
>>> b = a
>>> b is a
True
>>> b == a
True
>>> b = a[:]
>>> b is a
False
>>> b == a
True
Python中的對象包含三要素:id、type、value。
其中id用來唯一標示一個對象,type標識對象的類型,value是對象的值。
is判斷的是a對象是否就是b對象,是通過id來判斷的。
==是通過a對象與b對象的value來判斷的。