繁体   English   中英

python中的'numpy.ndarray'对象不是可调用错误

[英]'numpy.ndarray' object is not callable error in python

我正在将LU分解Matlab代码转换为python。

但是当我这样做的时候,我遇到了这个错误

'numpy.ndarray' object is not callable

当我尝试测试我的代码时,会发生此错误。 这是我的代码,有人可以解决这个问题吗? 我在等你的帮助。

import numpy as np

def LU(a):
    [m,m]=a.shape

    for k in range(0,m-1,1):
        a[k+1:m-1,k]=a[k+1:m-1,k]/a(k,k)
        a[k+1:m-1,k+1:m-1]=a[k+1:m-1,k+1:m-1]-a[k+1:m-1,k]*a[k,k+1:m-1]
    L=np.eye(m,m)+np.tril(a,-1)
    U=np.triu(a)
    return [L,U]

b=np.array([[1,0,0],[0,1,0],[0,0,1]])

LU(b)

发生错误是因为在函数的第4行上使用了错误的括号。

a[k+1:m-1,k]=a[k+1:m-1,k]/a(k,k)

应该改正为

a[k+1:m-1,k]=a[k+1:m-1,k]/a[k,k]

()括号应替换为[] 发生错误是因为[]大括号表示索引操作,而()大括号表示函数调用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM