数学公式的python模块/框架?

数学公式的python模块/框架?,python,Python,我正在尝试创建一个开放式报告结构,人们可以在其中使用基本上由字符串替换的公式定义报告 比如: 'my_report': { 'my_stat': '{units}/({units}+{other_units})*100' } my_stat = formula.parse(d) 然后将使用包含报告中允许的所有值的dict解析这些值 有大约一百个可能的键,框架需要允许任何有效的数学公式,因此您可以得到如下结果: 'my_report': { 'my_stat': '{units

我正在尝试创建一个开放式报告结构,人们可以在其中使用基本上由字符串替换的公式定义报告

比如:

'my_report': {
    'my_stat': '{units}/({units}+{other_units})*100'
}
my_stat = formula.parse(d)
然后将使用包含报告中允许的所有值的
dict
解析这些值

有大约一百个可能的键,框架需要允许任何有效的数学公式,因此您可以得到如下结果:

'my_report': {
    'my_stat': '{units}/({units}+{other_units})*100'
}
my_stat = formula.parse(d)
其中
d
是实际值的dict


是否有一个框架或模块已经支持此功能?

您可以使用
格式
评估
的组合自行开发:

class Formula():
    def __init__(self, formula):
        self.formula = formula

    def parse(self, d):
        return eval(self.formula.format(**d))

formula = Formula('{units}/({units}+{other_units})*100')
d = {'units': 100.0, 'other_units': 50.0}

my_stat = formula.parse(d)

print my_stat
返回

66.6666666667

还可以查看类似jinja2的模板库。