2. Python 基础知识2
2.1 Python对象
-
牢记 python 对象三要素:id,type,value
id:唯一标识一个对象(记录对象的内存地址)
type:标识对象的类型
value:对象的具体的值附:
a is b 判断 a 和b 两个对象是否为同一个对象(通过id来判断)
a == b 判断 a 对象的值是否和 b 对象的值相等(通过value来判断)
所以,到底 Python中 的”一切皆对象“到底表达的什么意思,这句话有什么意义?
还有,type 属于什么对象?
(这个问题比较大,以后有空再细看)
- 面向对象中的两种关系
- 继承关系
即父子关系,表现为子类继承于父类。
在python里要查看一个类型的父类,使用它的__bases__属性可以查看。 - 类型实例关系
类型实例关系,表现为某个类型的实例化。
在python里要查看一个实例的类型,使用它的__class__属性可以查看,或者使用type()函数查看。
-
object 与 type
再总结一下:第一列,元类列,type是所有元类的父亲。我们可以通过继承type来创建元类。第二列,TypeObject列,也称类列,object是所有类的父亲,大部份我们直接使用的数据类型都存在这个列的。第三列,实例列,实例是对象关系链的末端,不能再被子类化和实例化。 -
其它总结
-
一些结论
- type 是一切 type 的类型
- object 是所有对象的基类,type 也继承自 object
- object 的 type 是 type
具体可以参考:Python 的 type 和 object 之间是怎么一种关系?
- Python 内置类型