python中‘is’与‘==’区别辨析

来源:互联网 发布:浴霸松下奥普 知乎 编辑:程序博客网 时间:2024/06/15 21:20

Python中所有数据均由对象或对象间的关系表示。每个对象都有一个ID,一个类型和一个值。对象一旦建立,它的ID永远不会改变;你可以认为它是该对象在内存中的地址。is’操作符比较两个对象的ID;id()函数返回一个表示对象ID 的整数(当前实现为对象的地址)。对象的类型也是不可变的。type()函数返回对象的类型。某些对象的值可以改变。值可以改变的对象称为可变的;一旦建立,值就不可以改变的对象称为不可变的。‘==’比较的就是两个对象的值。

>>> a = 1>>> b = 1.0>>> a == bTrue>>> a is bFalse
>>> id(a)42230328L>>> id(b)42290416L
>>> type(a)<type 'int'>>>> type(b)<type 'float'>>>> a = 2>>> b = 2>>> a is bTrue>>> id(a)42230304L>>> id(b)42230304L




0 0
原创粉丝点击