相关疑难解决方法(0)

将参数传递给超类构造函数,而不在子类构造函数中重复它们

class P(object):
    def __init__(self, a, b):
       self.a = a
       self.b = b
class C(P):
    def __init__(self, c):
       P.__init__()
       self.c = c

obj = C(a, b, c) #want to instantiate a C with something like this
Run Code Online (Sandbox Code Playgroud)

我想定义C类对象而不重写P构造函数中C的所有类构造函数参数,但上面的代码似乎不起作用.这样做的正确方法是什么?

澄清:

这个想法是避免将父类的构造函数参数放在子类的构造函数中.这只是重复太多了.我的所有父类和子类都有许多参数可供构造函数使用,因此一次又一次地重复它们并不是很有效且难以维护.我试图看看我是否只能在其构造函数中定义子类的唯一内容,但仍然初始化继承的属性.

python oop

15
推荐指数
1
解决办法
9272
查看次数

标签 统计

oop ×1

python ×1