python中is 和 == 有什么区别

== 是比较运算符,比较的是值是否相等, 而is是身份运算符,比较的是两个对象是否为同一个对象

a = [1, 2, 3]
b = [1, 2, 3]

print(a == b)   # True   值相同
print(a is b)   # False  内存地址不同

print(id(a), id(b))

使用内置函数id可以获取一个对象的内存地址,只有当两个对象的内存地址相同时, 使用is身份运算符才会得到结果True

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案