is 与 == 的区别 python

is 与 == 的区别

这是一个关于底层机制的经典误区。

== (Equality): 比较两个对象的值是否相等。

is (Identity): 比较两个对象是否指向内存中的同一个地址。

容易犯错的情况:

Python

复制代码
a = [1, 2, 3]
b = [1, 2, 3]
print(a == b) # True
print(a is b) # False

注意:Python 对小整数(-5 到 256)有内存池缓存

复制代码
x = 256
y = 256
print(x is y) # True
z = 257
w = 257
print(z is w) # False (在某些解释器或交互式环境下)
相关推荐
梦幻精灵_cq16 分钟前
sumdir——一个伪python.built-in的“术法”打造
python
weixin_440730502 小时前
函数return、参数、参数组、递归函数、高阶函数等小结
开发语言·python
天赐范式2 小时前
天赐范式第181天:让视图开始切换——PBFT视图切换与从safety到liveness的跨越
python·pbft·数字生命·天赐范式·动态运行时·拜占庭容错
sugarzhangnotes2 小时前
【无标题】
开发语言·人工智能·python
weixin_447195293 小时前
【无标题】
pytorch·python
迅猛龙办公室3 小时前
Python实现简单的人名对话
python
阿坨3 小时前
firestart:一行命令启动你的日常应用和网页
python·pypi·cli·click
老歌老听老掉牙3 小时前
麻花钻切屑形态演变的力学机制与临界条件分析
python·算法·钻头
happylifetree4 小时前
Python18(补充):练习
python
weixin_416667964 小时前
银河麒麟V10看门狗试验-1
网络·chrome·python