У меня есть функция с двумя необязательными параметрами:
def func(a=0, b=10):
return a+b
Где-то в моем коде я делаю некоторый условный аргумент, проходящий как:
if a and b:
return func(a, b)
elif a:
return func(a)
elif b:
return func(b=b)
else:
return func()
Есть ли способ упростить код в этом шаблоне?
ИЗМЕНИТЬ
Предположим, что я не разрешен реализовывать логику параметров по умолчанию внутри func
.
У меня может быть несколько функций типа func
: func1
, func2
и func3
будут содержать
a = a or 0
b = b or 10
заявления.
Но я вызываю эти серии функций для устранения дублирования. (с использованием декоратора)