class sympy.core.add.Add转换为float

时间:2013-04-08 06:13:23

标签: python class sympy

Python上的这部分程序使用SymPy库。 因此,它会在 sympy.core.add.Add 类中生成一个值,该值不能与该程序的其他部分一起使用。

from sympy import *
x = symbols('x')
y = 1 - (0.1 * coeff1) / (x + 2) - sin(x) * (2 * x + coeff1)
yprime = y.diff(x)

如何将 sympy.core.add.Add 类转换为普通 float int ,以便使用变量 yprime < / strong>进一步计算?

3 个答案:

答案 0 :(得分:0)

我想你可以看看这里的文档http://docs.sympy.org/dev/modules/core.html#module-sympy.core.add 对于sympy.core.add.Add类型,有一些以“as_”开头的函数,您可以使用它们将add.add转换为其他格式,然后更改为float或int。

答案 1 :(得分:0)

结束代码怎么样?

yprime = float(yprime)

答案 2 :(得分:0)

我刚刚找到了解决方案。 使用yprime=float(yprime)无效,因为yprime仅是numpy类的元素。 但是您可以转换该元素,以使python标准语言能够读取它。

尝试:

yprime=str(yprime)

#this will transform yprime to a string

yprime=eval(yprime)

#this will return a float or a int object so you can do calculations without any problem but make sure that the constants are well defined.