该系统是使用烧瓶的Web应用程序。 我有一个名为ProcessingLayer的类,它接受一个函数作为参数并执行该函数。 我希望用户以函数的形式输入代码并将其与字符串关联,然后在选择字符串时执行该函数。该函数必须能够接受参数。
例如:
dict_of_functions = {}
def fun(*param):
//do something
dict_of_functions[STRING_KEYWORD] = fun
layer = ProcessingLayer(dict_of_functions[STRING_KEYWORD])
是否有用于处理此类内容的库或我应该如何最好地执行它?用户创建的每个函数和关键字是否必须在单独的文件上,主文件(从中调用函数)是否需要导入这些文件?我试着搜索,但一无所获。 谢谢你的每一个答案。
答案 0 :(得分:1)
我不明白你想要做什么。我想你可能想要执行存储在变量中的python代码吗?
您可以使用build-in function exec()从str()执行代码。
例如,您的用户在表单中输入了代码,并将其保存在变量中:
my_form = "def fun():\n pass\n\nfun()" // This is the return from the Form
您现在可以使用以下命令执行代码:
exec(my_form)
Python现在执行:
def fun():
pass
fun()
请记住,用户可以使用该表单来执行一些非常糟糕的代码。 执行用户输入的代码是一种非常糟糕的做法。
答案 1 :(得分:0)