假设我有一个 python 脚本“calculator.py”:
def Add(x,y) :
return x + y;
我可以像这样实例化一个动态对象:
var runtime = Python.CreateRuntime();
dynamic calculator = runtime.UseFile("calculator.py");
int result = calculatore.Add(1, 2);
是否有类似的简单方法可以从内存中的字符串实例化计算器?我想要得到的是这样的:
var runtime = Python.CreateRuntime();
string script = GetPythonScript();
dynamic calculator = runtime.UseString(script); // this does not exist
int result = calculatore.Add(1, 2);
GetPythonScript() 可能是这样的:
string GetPythonScript() {
return "def Add(x,y) : return x + y;"
}
最佳答案
你可以这样做:
var engine = Python.CreateEngine();
dynamic calculator = engine.CreateScope();
engine.Execute(GetPythonScript(), calculator);
关于c# - 从字符串创建 IronPython(动态)对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3314443/