У меня есть два метода из библиотеки, которые работают одинаково. Разница в том, что каждый принимает дополнительный, необязательный параметр. Например:
def method1(a, b, c):
...
def method2(a, b, c, d=None):
...
Я должен выполнить ту же задачу с результатами этих методов, поэтому у меня есть метод, который объединяет их, который выглядит следующим образом:
def wrapper(method, a, b, c, d=None):
...
if d:
results = method(a, b, c, d=d)
else:
results = method(a, b, c)
...
Это работает, но когда я добавляю больше методов, которые имеют разные необязательные аргументы, это становится громоздким. Есть ли способ лучше обработать эти параметры?