Question #
Python类型模型的三条原则之一:所有的 Python 的用户定义类,都是 type 这个类的实例。如何理解这句话?
Answer #
事实上,类本身不过是一个名为 type 类的实例。在 Python 的类型世界里, type 这个类就是造物的上帝。这可以在代码中验证:
# Python 3和Python 2类似
class MyClass:
pass
instance = MyClass()
type(instance)
# 输出
<class '__main__.C'>
type(MyClass)
# 输出
<class 'type'>
你可以看到,instance 是 MyClass 的实例,而 MyClass 不过是“上帝”type 的实例。