is 和 == 的区别
Posted tarzen213
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了is 和 == 的区别相关的知识,希望对你有一定的参考价值。
python中一个对象的包含三个基本要素:id、type、值
== 是判断两个值是不是相等:
is 时判断两个id是不是相同,是不是指向了同一个空间
>>> a = b = "sadf" >>> a is b True >>> a ==b True >>> c = "sadf" >>> a is c True >>> a = b = [1,2,3] >>> a is b True >>> c = [1,2,3] >>> a is c False 如果新创建的字符串和已经存在的字符串值相等,那么就不会开辟新的空间。数字也是这样的 列表就不一样了创建了新的列表就会开辟新的空间,所以id值不相等。元祖、字典也是这样的
以上是关于is 和 == 的区别的主要内容,如果未能解决你的问题,请参考以下文章