У меня есть два класса: один и два
class One:
# self.a, self.b, self.c
# ...
def foo(self):
self.a.foo()
self.b.bar()
self.c.hmm(1,2,3)
class Two(One):
# super(Two, self).__init__()
# self.d
# ...
def foo(self):
self.a.foo()
self.b.bar()
self.d.wow()
self.c.hmm(4,5,6)
Один и два foo()
методы достаточно похожи, что я чувствую, как будто я копирую код.Я знаю, что мог бы иметь отдельный метод foo2()
в One, который выполняет общий код и добавляет аргументы к foo()
для различных значений, но мне интересно, есть ли лучший способ сделать это.