Nai*_*ait 13 .net c# ironpython
我目前正在用C#构建一个程序,它将调用提供的python脚本文件中的函数.
一些脚本文件的调用_getframe()中sys,这会导致错误:
System.MissingMemberException:'module'对象没有属性'_getframe'
(因为IronPython _getframe默认没有激活.)
我做了很多谷歌搜索,发现你可以ipy.exe通过提供-X:Frames命令行选项来激活它,但是这并没有解决我的问题,因为我不是直接ipy.exe用来执行python代码.
在这个帖子中,他们提到使用命令行选项从源代码重建IronPython,我下载了源文件,但不知道如何使用这些选项构建它.
他们还提到选项是在官方安装程序中,我已经多次运行安装程序exe但没有看到那些选项的一瞥.
Jef*_*rdy 17
创建PythonEngine时,您可以传递选项字典; 您只需要将字典中的"Frames"和/或"FullFrames"键设置为true:
var options = new Dictionary<string, object>();
options["Frames"] = true;
options["FullFrames"] = true;
ScriptEngine engine = Python.CreateEngine(options);
Run Code Online (Sandbox Code Playgroud)
如果您不想要FullFrame,请将其保留或将其设置为false.
有点超出问题的范围,但意味着通过直接使用ipy.exe解释器调用Python脚本来获取此错误.
你可以添加参数-X:FullFrames.所以例如调用脚本就好
ipy.exe -X:FullFrames script.py
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6417 次 |
| 最近记录: |