在尝试进行样条插值时,我遇到了一个问题。我有代码在给定的间隔创建许多样条方程。其中一个方程式的示例可能看起来像......
0 + (1.0 * (x - 0)) + (0.0 * (x - 0)**2) + (0.0 * (x - 0)**3)
目前我所有的方程式都来自字符串。现在我正处于一个我希望将值插入' x'基于一些其他约束并从中获取值。现在生成它们的最佳方法是什么?
我已经查看了python eval
函数以及numpy / scipy中的一些其他选项,但我似乎无法找到将这些字符串转换为可用方程式的正确方法。谢谢提前。< / p>
答案 0 :(得分:-1)
所以对于可能遇到同样问题的其他人来说,我现在发现了一种“hacky”方式。我只是在上面的字符串上使用replace
来用数字值替换'x'。我能够使用eval从中获取数字。
例如:
>> eq = "0 + (1.0 * (x - 0)) + (0.0 * (x - 0)**2) + (0.0 * (x - 0)**3)"
>> eq = eq.replace("x", "1.1")
>> eval(eq)
1.1