如何执行用户通过web应用程序输入的字符串python
我们有一个webApplication(.net)和CalculationEngine(Python)如何执行用户通过web应用程序输入的字符串python,python,exec,eval,Python,Exec,Eval,我们有一个webApplication(.net)和CalculationEngine(Python) WebApplication:向用户显示结果和Python公式/并编写Python输入公式 计算引擎:计算公式 目标解决方案是:Web应用程序发送一个json文件,其中包含要计算(或执行)的代码 你能给我一个关于Exec/eval的选项吗 示例公式 def calcul_Inf_monthly_rates(Input) : try : output=np.arr
def calcul_Inf_monthly_rates(Input) :
try :
output=np.array([(1+v)**(1/12)-1 for v in Input])
except:
logging.error("Inf_monthly_rates : Error Calcul")
output=[]
finally:
return output
假设您的json看起来像:
json_func = """{"func": len}"""
# I used a simple len function for example
可以通过以下方式使用evel:
executed_func = eval(json_func)["func"]
# now you can run executed_func with params
print(executed_func("Hello")) # will output: 5
那么Web应用程序将发送json格式的Python代码,您希望Python程序执行它吗?我们可以看到一个示例json文件吗?您希望用户能够输入一行python代码,然后在服务器上执行?看到这种方法有什么问题吗?检查代码是一项非常困难的任务,它不是您最初问题的一部分。为了避免安全漏洞,您必须重新考虑系统的设计。一种方法是将功能封装到已经制作好的功能中,让用户选择其中一个。确切地说,我要求考虑设计、解决方案,与用户共享github。