我有一个Employee
类的对象。
# For Example
>>> employee1 = Employee()
我需要在下面的表达式中替换对象employee1
。表达式将是动态的
>>> expr = "object.basic_sal * 0.10 + 500"
例如,
>>> employee1 = Employee()
>>> employee1.basic_sal = 10000
>>> expr = "object.basic_sal * 0.10 + 500"
>>> eval_expr(object=employee1, expression=expr)
1500
我找不到类似的问题。
请帮助我。
答案 0 :(得分:1)
您可以使用str.format()
将值插值成字符串:
expr = "{object.basic_sal} * 0.10 + 500".format(object=employee1)
要评估表达式,可以使用eval()
函数,尽管由于安全风险通常不建议使用该函数。
result = eval(expr)