是否不会自动调用Mixin类__init__函数?

是否不会自动调用Mixin类__init__函数?,第1张

是否不会自动调用Mixin类__init__函数?

抱歉,我这么晚才看到,但是

class MixedClass2(SomeMixin, MyClass):    pass>>> m = MixedClass2() mixin before  base  mixin after

@Ignacio谈论的模式称为合作多重继承,这很棒。但是,如果基类对合作不感兴趣,则将其作为第二个基础,而将其混入第一个。在

__init__()
Python的MRO之后,将在基类之前检查mixin
(及其定义的其他内容)。

尽管我不确定它能处理您的特定用途,但这应该可以解决一般性问题。具有自定义元类(例如Django模型)或奇怪的装饰器(例如@ martineau’s
answer;)的基类可以做疯狂的事情。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5644815.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存