我需要动态生成 python 代码并使用 eval() 函数执行它。
我想做的是生成一些“导入”和“赋值”。我的意思是,我需要生成这个字符串来评估它eval(x)
。
x = """
import testContextSummary
import util.testGroupUtils
testDb = [testContextSummary.TestContextSummary,
testGroupUtils.testGroupUtils.TestGroupUtils]
""" # x is automatically generated
eval(x)
... use testDb ...
我尝试使用此代码,但 eval() 返回错误 not Recogniz import
,因此我尝试了此代码。
x = """
testContextSummary = __import__("testContextSummary")
testGroupUtils = __import__("util.testGroupUtils")
testDb = [testContextSummary.TestContextSummary,
testGroupUtils.testGroupUtils.TestGroupUtils]
""" # x is automatically generated
eval(x) # error
我再次收到错误,不允许赋值语句。
有没有办法执行动态生成的 python 脚本,并使用评估结果?