IronPython不会返回存储在文件中的表达式的结果

时间:2015-04-15 12:20:00

标签: c# expression ironpython

我尝试使用IronPython获取表达式的结果。以下代码按预期工作:

var e = Python.CreateEngine(AppDomain.CurrentDomain);
var source = e.CreateScriptSourceFromString("1 + 2");
var compiledCode = source.Compile(new PythonCompilerOptions());
var result = compiledCode.Execute(e.CreateScope()); // result = 3

执行此代码后result包含3。 让我们更改代码,使表达式来自文件:

var e = Python.CreateEngine(AppDomain.CurrentDomain);
var source = e.CreateScriptSourceFromFile(@"D:\!Scripts\Test.py");
var compiledCode = source.Compile(new PythonCompilerOptions());
var result = compiledCode.Execute(e.CreateScope());

该文件的内容为1 + 2。 执行result后为空。

为什么呢?怎么了? 解决方案可能是加载文件的内容并使用CreateScriptSourceFromString但是......不...

0 个答案:

没有答案