有很多人将 python 中的 is 和 == 二者等价,但这是不对的~ 1. is is 针对的是对象的本身 2. == == 针对的是对象的值 3. 代码 #定义两个数值相同的列表li1 = [1, 2, 3, 4]li2 = [1, 2, 3, 4]# 判断 == 号下
有很多人将 python 中的 is 和 == 二者等价,但这是不对的~
1. is
is 针对的是对象的本身
2. ==
== 针对的是对象的值
3. 代码
#定义两个数值相同的列表 li1 = [1, 2, 3, 4] li2 = [1, 2, 3, 4] # 判断 == 号下左右两端是否相等 print(li1 == li2) # 判断 is 逻辑符号下左右两端是否相等 print(li1 is li2) # 打印二者存储的地址 print(id(li1), id(li2))4.返回结果
可以看到而这指向的地址并不相同,验证了前面所说的is指向对象本身,而==只针对对象的值