';numpy.float64';对象不可调用
我得到的错误在我的文章标题中。我在其他问题中也看到了这一点,但我有兴趣理解这意味着什么,因为其他答案都是在一个不适用于我的特定背景下给出的 其次,我想了解这是如何应用于我的代码的,如下所示。请注意,如果Zindx=0,这一切正常,但不适用于任何其他情况';numpy.float64';对象不可调用,numpy,Numpy,我得到的错误在我的文章标题中。我在其他问题中也看到了这一点,但我有兴趣理解这意味着什么,因为其他答案都是在一个不适用于我的特定背景下给出的 其次,我想了解这是如何应用于我的代码的,如下所示。请注意,如果Zindx=0,这一切正常,但不适用于任何其他情况 Zindx = list(E).index(0) for m in range(0,N): if m != Zindx: for n in range(0,N):
Zindx = list(E).index(0)
for m in range(0,N):
if m != Zindx:
for n in range(0,N):
if n != Zindx:
if n != m:
x[m,m] = x[m,m] (
- (E[n]-E[m] + E[n])*x[m,n]*x[n,Zindx]
/x[m,Zindx]/E[m]
)
这:
正在尝试将x[m,m]
作为函数调用,并将括号内的表达式作为参数。我猜x[m,m]
返回一个float
。
你的意思是用括号中的词乘以
x[m,m]
?如果是这样,请添加*
您的问题是您在哪里执行x[m,m]=x[m,m](…)
。您可能希望在x[m,m]
和(
)之间粘贴一个*
,或其他操作符:否则,Python将其解释为调用对象x[m,m]
括号内有参数。现在我觉得自己愚蠢极了!Thamks。是的,我真是太愚蠢了。我读到括号可以用来表示在多行上运行的方程,但很明显,只有当它们使用相同的语法时,这才行得通。我忙于寻找我从未注意到的所有其他可能性。。.
x[m,m] (
- (E[n]-E[m] + E[n])*x[m,n]*x[n,Zindx]
/x[m,Zindx]/E[m]
)