Python 中的 “1” 和 “True”
1. 两者“数值”相等:
2. 但两者的ID不同
但是下面的结果有些奇怪。
看标题已经有点感觉了。其实,原因在于“is”和“==”的含义不同,“1”和“True”虽然数值相同,但是id不同。
“is” 比较的是 ID
is也被叫做同一性运算符,这个运算符比较判断的是对象间的唯一身份标识,也就是id是否相同。
“==” 比较的是 数值大小
==是python标准操作符中的比较操作符,用来比较判断两个对象的value(值)是否相等
记住这一点的话,就可以避免因is与**==**混用而产生错误了。
参考博客:
Python中is和==的区别