Python中is和==有什么区别?

is:比较的是两个对象的id值是否相等,也就是比较俩对象是否为同一个实例对象。是否指向同一个内存地址
== : 比较的两个对象的内容/值是否相等,默认会调用对象的eq()方法

x = y = [4,5,6]
z = [4,5,6]
x == y
True
x == z
True
x is y
True
x is z
False
print id(x)
print id(y)
print id(z)

2562314880008 —> id(x)
2562314880008 ---->id(y)
2562314975944 ----->id(z)

猜你喜欢

转载自blog.csdn.net/weixin_38819889/article/details/92097714