gpt4 book ai didi

python - 类型错误 : function() takes exactly 2 arguments (1 given) (python)

转载 作者:太空宇宙 更新时间:2023-11-04 03:22:54 27 4
gpt4 key购买 nike

import numpy as np
import scipy.optimize as spo

def function(x,y):
return (np.sin(x*y+y)*np.exp(-1*(x**2+y**2)))**-1


xi=[0,0]
answer=spo.fmin(function,xi)
print 'the answer is', answer

我正在尝试最小化此功能。但是运行它会出现

TypeError: function() takes exactly 2 arguments (1 given)

最佳答案

scipy.optimize.fmin(func, x0, args=(), xtol=0.0001, ftol=0.0001, maxiter=None, maxfun=None, full_output=0, disp=1, retall=0, callback=None)

参数func是可调用的func(x,*args)

在这种情况下,fmin 使用一个参数调用 function - x(即 xi)。第二个参数必须作为 args 参数传递。

xi = 0
args = (0,)
answer = spo.fmin(function, x0=xi, args=args)

http://docs.scipy.org/doc/scipy-0.16.0/reference/generated/scipy.optimize.fmin.html

关于python - 类型错误 : function() takes exactly 2 arguments (1 given) (python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34108198/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com