`object.__init__` 的位置

Location of `object.__init__`

object.__init__ 在 cpython 存储库中的什么位置? 我在 Objects/object.c 中搜索 __init__,但没有结果。

似乎所有不可变数据类型都使用object.__init__,所以我想知道它的实现。

Objects/object.c 是(大部分)object protocol 实现的地方,而不是 object 实现的地方。

objectObjects/typeobject.c中与type一起实现,其__init__方法在该文件中为object_init

(请注意,similar-sounding PyObject_Init 函数实际上与 object.__init__ 完全无关。PyObject_Init 是一个通用辅助函数,它执行类型指针和引用计数初始化一个 newly-allocated 对象结构。)