1==1
True
1 is 1
True
这是不是意味着==和is没有区别呢?答案是否定的。
==和is都是运算符,但区别还是有的。
python中的对象包含三个要素:
1,id身份
2,type类型
3,value值
下面,以实例调试:
例1:
a="1"
b="1"
print(id(a))
print(id(b))
a==b
True
a is b
True
例2:
a=[1,2,3]
b=[1,2,3]
print(id(a))
print(id(b))
a==b
True
a is b
False
由此可见,==对比的是值,而is还包括身份。
网友评论