8-7中13:00左右, BaseModel有两行代码不太理解?
来源:8-7 通过元类实现orm-2

慕粉1946152704
2019-10-29
BaseModel这个类的__init__函数最后一行return super().init()不太理解其含义, 先谈谈我的理解:
super()指BaseModel这个类在__mro__中继承的上一个类, 也就是object, 所以这行等价于return object.init(), 这个返回的是个什么对象呢?返回的对象会到哪去呢?很疑惑…
写回答
3回答
-
慕少0351952
2022-06-07
继承的C3算法?
00 -
bobby
2019-10-30
class A(object): def __init__(self): super(A, self).__init__() #可以注释这一行再看看会不会调用B的init class B(object): def __init__(self): print("i am in B") super(B, self).__init__() class C(A, B): def __init__(self): print("i am in C") super(C, self).__init__() c = C()
可以理解一下A中继承的明明是object,调用super()为什么会调用B的init方法呢
042019-11-02 -
bobby
2019-10-30
如果我定义了一个c
class C(BaseModel, BaseModel2): pass
这个时候在c中调用了super().__init__(), 会去调用BaseModel中init,这个时候BaseModel调用super()还会是object类吗?
00
相似问题