hlm233
hlm233
采纳率0%
2017-08-19 13:32 阅读 1.5k

Python 类和对象的生成

1

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • oyljerry oyljerry 2017-08-20 02:51

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

    点赞 1 评论 复制链接分享
  • Allblues57 Allblues57 2017-08-23 02:31

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

    点赞 评论 复制链接分享

相关推荐