python中的type和object

object 和 type

python中object是所有类的基类

>>> type.__bases__      //type元类的基类
(<class 'object'>,)

class Foo(object):
    pass

>>> Foo.__bases__   //自定义类Foo的基类
(<class 'object'>,)

class Boo(Foo):
    pass

>>> Boo.__bases__   //自定义类Boo的基类
(<class '__main__.Foo'>,)
>>> Boo.__base__.__bases__  //自定义类Boo的基类的基类
(<class 'object'>,)

python中一切皆对象,类也是对象,类对象是由元类创建;type是python内建元类,所有元类的祖宗,类对象可以由元类type或者元类type的子类创建

class Foo(object):
    pass

>>> Foo.__class__   //查看Foo(类对象)的类,
<class 'type'>

foo = Foo()

>>> foo.__class__   //查看foo对象的类
<class '__main__.Foo'>
>>> foo.__class__.__class__     //查看foo对象的类对象的类
<class 'type'>

type也是元类对象,由自身创建

>>> type.__class__  
<class 'type'>

猜你喜欢

转载自blog.csdn.net/qq_16688265/article/details/80378300
今日推荐