首页 > 代码库 > python之什么是对象值比较,什么是对象身份比较

python之什么是对象值比较,什么是对象身份比较

一、对象值的比较

1、比较的操作是针对对象的值进行比较的

2、也就是说比较的是对象的值,而不是对象本身


等价于值和值的直接比较:

>>>
>>> 2 == 2
True
>>> 2.46 <= 8.33
True


对象值的比较

>>> a = 88
>>> b = 98
>>>
>>> a == b
False
>>> a >= b
False
>>> a <= b
True
>>> a < b
True

解析:

创建了整型对象88,98,并分别赋值(通过引用)给变量a,b,这里的变量a和b也是对象。记住,python一切皆对象,那么对象a的值是88,对象本身是什么?当然就是a。所以说,比较的是对象的值,而不是对象本身。


二、关于对象身份比较

>>> f = 4
>>> g = 4

>>> f is g
True
>>> id(f)
23359760
>>> id(g)
23359760
>>>


解析:

创建的数字对象分别赋值给了变量f和g,f和g是指向同一个数据对象4。用is来判断f和g是否是同一个对象,那么答案是True,是同一个对象。那么通过id(),查看变量f和g所指向的对象内存地址,那么都是同一个内存地址。









本文出自 “FA&IT运维-Q群:223843163” 博客,请务必保留此出处http://freshair.blog.51cto.com/8272891/1868026

python之什么是对象值比较,什么是对象身份比较