is 与 == 的区别:

四、is 与 == 的区别:
is : 是不是(同一对象)
== :等不等 (值等不等)
eg1: eg2:
a=100 a=222223333333333
b=100 b=222223333333333
print(ab) #True print(ab) #True
print(a is b) #True print(a is b) #False

Python有一个数值范围 当数值足够大时,整型数据类型存储在堆里面

eg:
class people():
pass
a=people()
b=people()
print(a==b) #False
print(a is b) #False

==判断值相等,判断栈里面的内容,is判断堆里面的内容

eg:
class people():
pass
a=people()
b=people()
c=a
print(c==a) #True
print(c is a) #True

猜你喜欢

转载自blog.csdn.net/charuiyu/article/details/86253085