1. 程式人生 > >Python中的is和==的區別,is判斷值是否相等,id判斷地址是否一致

Python中的is和==的區別,is判斷值是否相等,id判斷地址是否一致

copy 就是 是否一致 val 類型 對象 包含 () true

Python中的is和==的區別

Python中的對象包含三要素:id、type、value。

其中id用來唯一標示一個對象,type標識對象的類型,value是對象的值。

is判斷的是a對象是否就是b對象,是通過id來判斷的。

==判斷的是a對象的值是否和b對象的值相等,是通過value來判斷的。

看下邊的例子:

>>> s=set("1234")

>>> s

set([‘1‘, ‘3‘, ‘2‘, ‘4‘])

>>> ss=s.copy()

>>> ss

set([‘1‘, ‘3‘, ‘2‘, ‘4‘])

>>> s == ss

True

>>> s is ss

False

>>> id(s)

92071976L

>>> id(ss)

92251528L

Python中的is和==的區別,is判斷值是否相等,id判斷地址是否一致