TypeError:'numpy.float64'对象不可调用

5hcedyr0  于 12个月前  发布在  其他
关注(0)|答案(4)|浏览(79)

所以,我试图做的是从给定>范围的数组中的某些位置获取某些数字,并将它们放入一个等式中:

yy = arange(4)
xx = arange(5)
Area = ((xx[2] - xx[1])(yy[2] + yy[1])) / 2

字符串
我试着运行它,我得到这个..

----> ((xx[2] - xx[1])(yy[2] + yy[1])) / 2
TypeError: 'numpy.int64' object is not callable


我得到一个错误..我如何使用数组中的某些数字并将它们放入方程中?

rggaifut

rggaifut1#

Python不遵循书面数学的规则,你必须显式地指定乘法。

不好:

(a)(b)

字符串

  • (除非a是一个函数)*

好:

(a) * (b)

smtd7mpg

smtd7mpg2#

当函数与返回值同名时,也会发生此错误

def samename(a, b):
    samename = a*b
    return samename

字符串
这可能是一个超级菜鸟的错误,我很好奇这个答案多久会有帮助。

niknxzdl

niknxzdl3#

如果你在乘法时缺少*,试试:

import numpy as np
yy = np.arange(4)
xx = np.arange(5)
Area = ((xx[2] - xx[1])*(yy[2] + yy[1])) / 2

字符串

30byixjq

30byixjq4#

这可能是因为您已覆盖了试图调用的函数的名称。
举例来说:

def x():
    print("hello world")
...
x = 10.5
...
x()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
 in 
      2     print("hello world")
      3 x = 10.5
----> 4 x()

TypeError: 'float' object is not callable

字符串

相关问题