1、使用parser库
下面方法针对Python 2.6以上版本,Python 2.6以前版本可用compiler库。如下代码段,配合使用parser库和eval函数可实现对任意公式的解析。其中,公式中用到的函数在解析前定义即可。
import parser
code = parser.expr("x*2").compile()
x = 10
print(eval(code))
使用时,可将以上过程封装成一个函数来调用,如下代码段。gen_fuc接收公式输入返回一个函数用于调用,方便后续多次使用同一公式。