首页 > 试题广场 >

python中is和==的区别

a = [0]
b = [0]
print(id(a))
print(id(b))
print(a == b)
print(a is b)

发表于 2019-07-21 14:41:46 回复(1)
is 用来判断两个对象是否一样,而==是用来判断值是否一致。在python中一切皆对象,当我们对一个变量进行赋值就是对一个对象的引用。因此要判断两个对象是否一样,要查看它的地址,即可用id()来查看。一般情况下,string、数值型变量,is和==的结果一致;对于数组等一般不一致。
发表于 2019-07-23 22:30:32 回复(0)
is比较的是id值(粗略的理解为内存地址的指向),== 判断的是他的值是否相等,id不作为比较条件

发表于 2019-04-23 12:30:12 回复(0)