Python中的对象包含三要素:id、type、value 其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值 is判断的是a对象是否就是b对象,是通过id来判断的 ==判断的是a对象的值是否和b对象的值相等,是通过value来判断的 如下代码或许可以帮助你理解。 >>> a = 1 >>> b = 1.0 >>> a is b False >>> a == b True >>> id(a) 12777000 >>> id(b) 14986000 ————注意下面的情况—————————————————— >>> a = 1 >>> b = 1
>>> a == b True>>> a is bTrue
a==b 没有任何问题。但是a is b 为什么是True呢??
python学习手册P164页作出了解释:
a,b不是同一个对象,因为是两个不同的常量表达式。 不过,因为小的整数和字符串被缓存并复用了,所以is告诉我们是同一个对象。
python is 和==的区别
最新推荐文章于 2024-08-16 18:55:06 发布