Tho*_*hor 2 python oop class python-3.x
我目前正在学习 python OOP 模型并被告知
type本身源自object,并且object源自type
我知道这object是python 3.x中每个类的默认超类,并且typeclass用于创建类(即类对象)。object并type一起(以某种方式)构成了 python OOP 的基础,但我仍然对上面的陈述感到困惑。
object有人可以详细解释 和之间的关系type以及它们在 python OOP 中扮演的角色吗?谢谢
我们需要区分子类化和实例化。确切的规则可能因语言而异,但在 Python 3.x 中——
所有类都是(好吧,除了它自己)的子类。是类层次结构的根。objectobjectobject
该类type是的子类object。
所有对象都是类的实例。
类本身就是对象。(并非所有语言都是如此。)
类对象作为对象,是类的实例——类对象是类的实例type(默认元类)。
是的,type是一个类和一个对象,并且它是的实例type。type有课type。
是的,object是一个类和一个对象,并且它是的实例type。object有课type。
.__class__您可以通过使用或type()来查看对象的类。.__mro__您可以通过使用(方法解析顺序)来查看类的超类。
>>> type(object)
<class 'type'>
>>> type(type)
<class 'type'>
>>> object.__mro__
(<class 'object'>,)
>>> type.__mro__
(<class 'type'>, <class 'object'>)
Run Code Online (Sandbox Code Playgroud)