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