Python 如何克服此错误“TypeError:“float”对象不可调用”

Python 如何克服此错误“TypeError:“float”对象不可调用”,python,Python,我一直试图解决这个回归问题,但这个错误一再出现 代码如下: def CostFunction(x,y): return ((-y(math.log(1/(1-math.e ** -x)))) - ((1 - y) * (1 - math.log(1/(1-math.e ** -x))))) 我希望输出为上述方程式的计算结果,但我得到以下错误消息: TypeError:“float”对象不可调用 您缺少乘法的星号: return-y*math.log1/1-math.e**-

我一直试图解决这个回归问题,但这个错误一再出现

代码如下:

def CostFunction(x,y):    
    return ((-y(math.log(1/(1-math.e ** -x))))  -  ((1 - y) * (1 - math.log(1/(1-math.e ** -x)))))
我希望输出为上述方程式的计算结果,但我得到以下错误消息:

TypeError:“float”对象不可调用


您缺少乘法的星号:

return-y*math.log1/1-math.e**-x-1-y*1-math.log1/1-math.e**-x
当你做你。。。它尝试将y作为参数在…内的函数调用,因为y是无法调用的数字类型,因此这就是错误消息的含义。

what is-y。。应该怎么做?对于将来自己解决这些问题的一种方法,首先将长而复杂的表达式拆分为较小的表达式,将每个子结果保存到临时变量中,然后组合到最终结果中。如果问题消失了,将您现在拥有的子表达式与更大的复杂表达式的相应部分进行比较,看看是否可以找出问题所在。如果错误仍然存在,那么行号应该可以帮助您确定问题所在,并且应该更容易在您现在拥有的更小更简单的表达式中找到。我还强烈建议:找到合适的橡皮鸭可以是真正的橡皮鸭、宠物、植物、室友或任何其他合适的死物或活物,把密码大声读给它/他/她/其他人听。有时候读出来会让你觉得,嘿,听起来不太对劲,或者如果你用的是一个人,他或她可能会注意到,并为你指出。