python - 为什么在这里不能调用浮点类型的对象?

标签 python error-handling numerical-methods taylor-series

我正在尝试用Python创建泰勒系列,但我不知道如何消除此错误:

x=Symbol("x")

def f(x):
    return ((math.e)**x)*sin(x)

y=f(x)

print(y.diff(x))

def Taylor(f,x,m,a):
    y=f(x)
    y2=f
    yargliige=0
    viga = 10**(-m)
    n=0
    while True:
        if n>10:
           return yargliige,n
        else:
           yargliige+=(y(x)*(x-a)**n)/(factorial(n))
           y=y.diff(x)
           if abs(yargliige(x)-f(x))<viga:
              return yargliige,n
        n+=1

print(Taylor(f,-0.3,3,-1))

我收到错误消息:
Traceback (most recent call last):
  File "C:\Users\arman\Desktop\Numbrilised meetodid\praktikum10.py", line 31, in <module>
    print(Taylor(f,-0.3,3,-1))
  File "C:\Users\arman\Desktop\Numbrilised meetodid\praktikum10.py", line 25, in Taylor
    yargliige+=(y(x)*(x-a)**n)/(factorial(n))
TypeError: 'Float' object is not callable

似乎原始函数不接受float,这似乎很荒谬。

最佳答案

您已经调用了y = f(x),它存储了从函数float返回的f
您无法执行y(),因为无法调用y
y = f(x)更改为y = f,它应该可以解决您的用例。

关于python - 为什么在这里不能调用浮点类型的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62353721/

相关文章:

python - 如何在 Robot Framework 中获取当前测试用例状态通过/失败

tomcat8 - 400 的自定义错误页面

c - -1.#IND0 在 C 中使用 Runge-Kutta 方法时出错

python - 在python中使用蒙特卡洛方法

python - 是否可以在 keras 中实现动态类权重?

python - `yield from` 的时间复杂度为 O(1) 吗?

Angular 在尝试导航应用程序时抛出错误

c - libc 是否显示国际错误消息?

python - 关于 Gmsh Python API 的问题

java - 将 Java 翻译成 Python——使用 PEM 证书文件签署字符串