码迷,mamicode.com
首页 > 其他好文 > 详细

is 和 == 的区别

时间:2020-02-11 11:50:42      阅读:78      评论:0      收藏:0      [点我收藏+]

标签:bsp   一个   col   pytho   adf   存在   python   class   nbsp   

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 和 == 的区别

标签:bsp   一个   col   pytho   adf   存在   python   class   nbsp   

原文地址:https://www.cnblogs.com/tarzen213/p/12294054.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!