【发布时间】:2021-11-08 00:36:19
【问题描述】:
我想在 python 代码对象中传递一些参数。我已经尝试了下面的代码,它运行良好,但我想知道如何从外部传递a 和b 的值并将返回变量分配给另一个变量c。
codeInString = 'a = 5\nb=6\nsum=a+b\nprint("sum =",sum)\v return sum'
codeObject = compile(codeInString, 'sumstring', 'exec')
exec(codeObject)
类似这样的:
codeInString = 'sum=a+b\nprint("sum =",sum) return sum'
codeObject = compile(codeInString, 'sumstring', 'exec')
c = exec(codeObject(a,b))
请注意:我在分布式环境中运行此代码。
【问题讨论】:
-
你的意思是像
exec(codeObejct, dict(a=5, b=6))?不知道你所说的全局是什么意思。 -
是的,我想要这样的东西.. exec(codeObejct, dict(a=5, b=6)).. 但这不起作用.. 你能告诉我 CodeString 将如何对应this.@don'ttalkjustcode
标签: python parallel-processing compilation runtime