python3类__init__继承而不再次定义参数

时间:2015-11-09 18:59:41

标签: python class python-3.x inheritance

是否可以继承一个类并使用其init函数而不在子类中再次声明所有参数?

我有一个包含大量参数的课程,但我不想使用列表(** args)。我不会看到我的实际参数:

class Table(object):
    def __init_(self, name, height ...):
        self.name = name
        self.height = height

class RoundTable(Table):
    def __init__(self, radius):
        self.radius = radius

table = RoundTable(name = "Placeholder",
                   height = 10,
                   radius = 20)

1 个答案:

答案 0 :(得分:1)

在分配specfic args之前使用超类

def __init__(self,radius,*args,**kwargs):
     super().__init__(*args,**kwargs)
     self.radius = radius

编辑:我假设你的意思是阶级而不是函数