在我的Python代码中,我有一个像
这样的函数def f(x, alpha=1.):
return (1.-x**2)**alpha
我想整合那个功能。一种方法是使用scipy.integrate,例如
from scipy.integrate import quad
quad( f, 0, 1)
现在我想改变参数alpha
,调用quad( f(alpha=2.), 0,1)
不起作用,我怎么能意识到这一点?
修改:代码运行时,用户输入会改变alpha
的值
答案 0 :(得分:1)
quad
和其他几个函数有一个args
参数,可用于提供其他参数。如果您正在集成的函数在 x
之后具有额外的参数就像它一样。所以你只需要做
alpha = 2
quad(f, 0, 1, args=(alpha,)) # notice the trailing comma for the tuple
documentation中还有其他示例。