id(object)
功能:返回的是对象的“身份证号”,唯一且不变,但在不重合的生命周期里,可能会出现相同的id值。此处所说的对象应该特指复合类型的对象(如类、list等),对于字符串、整数等类型,变量的id是随值的改变而改变的。
python版本:Python2.xPython3.x
Python英文官方文档解释:
Returnthe“identity”ofanobject.Thisisaninteger(orlonginteger)whichisguaranteedtobeuniqueand
constantforthisobjectduringitslifetime.Twoobjectswithnon-overlappinglifetimesmayhavethesameid()value.
CPythonimplementationdetail:Thisistheaddressoftheobjectinmemory.
注:一个对象的id值在CPython解释器里就代表它在内存中的地址(Python的c语言实现的解释器)。
代码实例:
classObj():
def__init__(self,arg):
self.x=arg
if__name__=='__main__':
obj=Obj(1)
printid(obj)#32754432
obj.x=2
printid(obj)#32754432
s="abc"
printid(s)#140190448953184
s="bcd"
printid(s)#32809848
x=1
printid(x)#15760488
x=2
printid(x)#15760464
用is判断两个对象是否相等时,依据就是这个id值
is与==的区别就是,is是内存中的比较,而==是值的比较
以上内容为大家介绍了python培训之id函数如何运行,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们