Python 类和对象的生成 1C

在Python中分为元类type和更低一级的类对象int,str,float......所有的非元类的自定义和
类和内部类都是由type类的实例,它们是用type()生成的对象,但是Python中一切皆是
对象,那么我很好奇这个标签是type的这个元类对象是怎么产生的呢? 一开始必须用
type()才能生成其他类对象,那么type这个对象本身是怎么产生的呢? 我是小白,网上
资料没有这方面的解释,求大神解答一下,可能我描述的很混乱,或者错误。请纠正!

2个回答

类也是对象。type也是对象。最上面就是object

hlm233
hlm233 我就是想问type这个对象是怎么形成的啊!
接近 3 年之前 回复

推荐一本书:《Python源码剖析》,其中第1章 Python对象初探。
至于你的问题,type这个元类对象是怎么产生的?对象是怎么产生的,它就是怎么产生的。对象你要一视同仁,在python中,对象就是C中的结构体在堆上申请的一块内存。
由于python里面一切皆对象,对每一个类型对象,它的类型都是PyType_Type。
正如,int的类型是PyInt_Type,而PyInt_Type的类型是PyType_Type;
PyTypeObject应该是所有类型的基类,但同时,它的类型就是PyType_Type;
而由于PyType_Type本身也是一种类型对象,所以它的类型也是PyType_Type。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问