Я хочу передать аргументы ключевого слова, чтобы интегрировать функцию в dblquad или nquad.
Можно ли вообще иметь здесь аргумент ключевого слова или я должен просто включить только позиционные аргументы?
По сути, я пытался передать словарь как обычный аргумент. Ниже моя попытка сделать это:
def foo(A, B, **kwargs):
alpha = kwargs.get('alpha', 1.0)
beta = kwargs.get('beta', 1.0)
return A*alpha+B*beta
def integrator(**kwargs):
alpha = kwargs.get('alpha', 1.0)
beta = kwargs.get('beta', 1.0)
a = dblquad(foo, 0, 2*pi, lambda x: 0, lambda x: 2*pi, args=(kwargs))
integrator(alpha = 1.0, beta = 2.0)
Python жалуется на неправильное количество позиционных аргументов. Он обрабатывает словарь ключевых слов как ряд позиционных аргументов.