You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

builtins.object是什么?解析Python输出中builtins.object的含义

Python中builtins.object的解析

一、builtins.object是什么?

builtins.object是Python里所有类的终极基类。在Python 3中,任何自定义类如果没有显式指定父类,都会默认继承它。它提供了Python对象的核心基础能力,比如默认构造逻辑、字符串表示、相等性判断等内置方法,还有用于管理实例属性的__dict__、支持弱引用的__weakref__等描述符。

二、代码输出中方法解析顺序(MRO)里的builtins.object含义

先看你的代码示例:

class Fruits:
    p=12
    def __init__(self,name,color,taste):
        self.name=name
        self.color=color
        self.taste=taste
    def show(self):
        return f"Fruit name: {self.name}\nFruit color: {self.color}\nFruit taste: {self.taste}"
class Apple(Fruits):
    pass
obj1=Apple(3,3,3)
print(help(Apple))

这段代码里的Fruits类没有显式声明父类,在Python 3中会自动继承builtins.object。而Apple类继承自Fruits,所以Python在查找方法或属性时,会按照以下方法解析顺序(MRO)进行:

  • 首先查找Apple类自身的定义
  • 接着查找父类Fruits的定义
  • 最后查找Fruits的父类builtins.object

这就是运行输出里的方法解析顺序最后出现builtins.object的原因——它是整个继承链的顶端,所有自定义类的基础功能最终都源于它。比如输出里的__dict__、__weakref__这些描述符,就是从builtins.object继承而来,再通过Fruits传递给Apple的。

内容的提问来源于stack exchange,提问作者Ali Murtaza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 15:48:47