我有两个从同一父类继承的类
class parent:
@abstractmethod
def update(self):
pass
class child1(parent):
def update(self):
do_something
class child2(parent):
def update(self):
do_something_else
和一个类似于下面的脚本
child = either child1() or child2() depending on some condition
a = func_a()
b = func_b()
c = func_c()
d = func_d()
在这个脚本中,我想调用child.update()
,并向它传递一些参数。这些参数可以是a
、b
、c
或d
或它们的组合,取决于可以是child1
或child2
的子类型。这些必要参数的数量也不同
根据此条件,调整将哪些参数传递给update
方法的最干净方法是什么
我想避免复杂的if, elif
条件(因为我的实际代码比这个例子要大),我想将所有可能的参数作为dict传递,然后选择在update
方法中使用哪些参数,但我也不喜欢
关键字参数为此类问题提供了一个干净的解决方案:
相关问题 更多 >
编程相关推荐