我遇到了一个问题,我需要一个带有香草制定者的自定义吸气剂。当我尝试在子类的__init__
中设置属性时会发生问题。如果我将super
的{{1}}放在最后,它将覆盖__init__
类中的集合。
显然让Child
运行它super
首先修复了这个问题,我已将__init__
放入assert
的{{1}}以确保_x已经初始化。
我的问题是我是否做了明显错误的事情。在setter中有一个断言对我来说很笨拙。
注意:我以前没有在init中初始化_x,直到pylint对我大喊大叫。
Parent
答案 0 :(得分:4)
我个人更喜欢以下解决方案:
class Parent(object):
def __init__(self, x=None):
self._x = x
class Child(Parent):
def __init__(self, x):
super(Child, self).__init__(x)