Python:如何在计算中获得变量值?

时间:2015-02-17 09:47:26

标签: python variables

我的问题是: 我想知道一个计算得到一个变量的值 (:" x = 5 * x - 20" - > x = 5)

我的解决方案只是强制执行,所以我从0开始,然后在每一步中向上和向下一步,并检查它是否有效。它确实如此,但当然在浮动数字上确实很慢。总之,我需要一个像以下的功能:

getVar(sCalculation ["x = 5*x - 20"], sVar ["x"]) --> 5

你会怎么做? 如果您有任何疑问,请随时提出以下问题:

1 个答案:

答案 0 :(得分:0)

您要么必须编写自己的解析器来计算x,要么只使用为您完成工作的库。有关SO的讨论很多。例如:Simplest way to solve mathematical equations in Python

所以基本上你应该看看SymPy解决方程式的方法: http://docs.sympy.org/latest/tutorial/solvers.html#solving-equations-algebraically

solve([x = 5*x - 20], [x])
{x: 5}

修改

以下是您可能想要检查的另一个参考:How to calculate expression using sympy in python