当前位置: 首页 > 问答 > Python编程 > 问答详情

python的id函数如何运行

09月28日 04:51420人阅读
刘老师 Python编程

id(object)

功能:返回的是对象的“身份证号”,唯一且不变,但在不重合的生命周期里,可能会出现相同的id值。此处所说的对象应该特指复合类型的对象(如类、list等),对于字符串、整数等类型,变量的id是随值的改变而改变的。

Python版本: Python2.x Python3.x

Python英文官方文档解释:

Return the “identity” of an object. This is an integer (or long integer) which is guaranteed to be unique and 
constant for this object during its lifetime. Two objects with non-overlapping lifetimes may have the same id() value.
CPython implementation detail: This is the address of the object in memory.

注:一个对象的id值在CPython解释器里就代表它在内存中的地址(Python的c语言实现的解释器)。

代码实例: 

class Obj():  
    def __init__(self,arg):  
        self.x=arg  
if __name__ == '__main__':  
       
    obj=Obj(1)  
    print id(obj)       #32754432  
    obj.x=2  
    print id(obj)       #32754432  
       
    s="abc"  
    print id(s)         #140190448953184  
    s="bcd"  
    print id(s)         #32809848  
       
    x=1  
    print id(x)         #15760488  
    x=2  
    print id(x)         #15760464

用is判断两个对象是否相等时,依据就是这个id值

is与==的区别就是,is是内存中的比较,而==是值的比较

来自标签:

职业技能申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

问答来自

刘老师 Python编程
好评率85% 浏览420

相关问题

python程序设计主要学什么?
魏老师 Python编程
python中vars函数是什么意思?
黄老师 Python编程
python中如何实现array与list的相互转换?
刘老师 Python编程
课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部