Python is和==的区别

来源:互联网 发布:魔法卡片收藏家软件 编辑:程序博客网 时间:2024/06/05 10:57

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

其中:id用来唯一标识一个对象,type标识对象的类型,value是对象的值。

is判断的是a对象是否就是b对象,是通过id来判断的。

==判断的是a对象的值是否和b对象的值相等,是通过value来判断的。

举个例子:

>>> a = [1,2,3]>>> import copy>>> b = copy.copy(a)>>> a == bTrue>>> a is bFalse>>> id(a)4553051456>>> id(b)4553137040
a和b的值是相同的,故a==b为true,而a和b的id是不同的,故a is b是false。

1 0
原创粉丝点击