Python3.7中,is,is not 与 ==,!=的区别

2020-12-28  本文已影响0人  Edwin_红狼

首先先给出结论,

is,is not 比值一样,还要地址一样;

==,!=比值一不一样就可以。

by the way一下(我是小白)

=是赋值

大家猜一下:

print(0 ==0.0)

print(0 is 0.0)

print(0 is not 0.0)

结果:

True

False

True

那我们在来看一下是什么?

a =0

b =0.0

print(a ==b)

print(a is b)

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

大家猜一下结果会是怎样的?

True

False

8791335359488 3584408

所以到这里就比较清晰看到,== 主要是以值为主的,包括0与0.0,都是一致的;不分整数与小数的方式;

而is 就以值地址,不仅值要一样,值地址也是一样的;因为0与0.00存的地址不一样,所以使用is给出结果是False;

上一篇 下一篇

猜你喜欢

热点阅读