代码之家  ›  专栏  ›  技术社区  ›  Begtostudy

如何使用C#2.0中的X:Frames加载ironpython?

  •  2
  • Begtostudy  · 技术社区  · 14 年前

    我可以使用IronPython2.6(不适用于.NET4)加载numpy,在命令行上用-X:Frames或-X:FullFrames运行ipy。

    但是,如果我想在C#2.0中使用Ironpython/DLR来加载py文件,那么如何使用-X:Frames或-X:FullFrames呢?

            var lang = Python.CreateLanguageSetup(null);
            lang.Options["Frames"] = ScriptingRuntimeHelpers.True;
            var setup = new ScriptRuntimeSetup();
            setup.LanguageSetups.Add(lang);
            var runtime = new ScriptRuntime(setup); 
            var engine = runtime.GetEngine("py");
    
            engine.ExecuteFile("test.py");  
    

    但是,没用! 有人能帮我吗?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Dino Viehland    14 年前

    我不认为框架工作或不工作是你的问题。如果我把你的密码放在:

    import sys
    sys._getframe()
    

    如果我有'lang.Options[“Frames”]=ScriptingRuntimeHelpers.True;'如果我不这样做就会失败。这表明该选项工作正常。

    那么你的错误是什么呢?您可能需要设置命令行通常执行的操作,例如sys.path,它可能需要当前目录和/或“.”。或者需要导入site.py。或者Ironcold安装在DLLs目录中并自动加载,所以您需要在它的DLL上执行runtime.LoadAssembly(…)。

        2
  •  0
  •   Community pid    7 年前

    你的问题看起来像这样: Can't import numpy into embedded ironpython engine

    但是,也许你应该提供更多关于你所犯错误的信息。。。

    推荐文章