python中的“==”用来判断两个变量的值是否相等,如:
a = [11, 22, 33]
b = [11, 22, 33]
print a == b //True
is也是用来判断是否相等,但是是判断地址:
a = [11, 22, 33]
b = [11, 22, 33]
c = a
print c == b //True
print c is b //False
print c is a //True
因为a和b是两块不同的地址空间,虽然值相同,但是地址不同,所以使用is的时候会返回False。
而c是直接被赋值a,它所指向的地址就是a的地址,所以c is a
是True
此处评论已关闭