我正在尝试在IronPython的帮助下执行在C#中使用pyparsing的 python 脚本。但是当我尝试运行脚本时,我得到了ImportException。我试图向包含pyparsing的目录添加路径,但我仍然没有管理如何以正确的方式运行它。No module named pyparsing
这是C#代码:
string ExecutePythonScript(string path, string text)
{
ScriptEngine engine = Python.CreateEngine();
ScriptScope scope = engine.CreateScope();
string dir = System.IO.Path.GetDirectoryName("pyparsing-1.5.7");
ICollection<string> paths = engine.GetSearchPaths();
if (!String.IsNullOrEmpty(dir))
{
paths.Add(dir);
}
else
{
paths.Add(Environment.CurrentDirectory);
}
engine.SetSearchPaths(paths);
scope.SetVariable("text", text);
engine.ExecuteFile(path, scope);
return scope.GetVariable("result");
}
当然,在 python 脚本的开头我导入了 pyparsing。