IronPython ImportException:没有名为logging的模块

时间:2013-09-24 07:19:51

标签: c# logging mono ironpython importerror

我让ironpython在mono上工作正常,但它没有导入logging模块。 执行此代码:

ScriptEngine engine = Python.CreateEngine();
dynamic logging = engine.ImportModule("logging");

产生以下错误:

IronPython.Runtime.Exceptions.ImportException: No module named logging

我所包含的IronPython程序集是最新的:IronPython.Modules.dll,Microsoft.Dynamic.dll,Microsoft.Scripting.dll,Microsoft.Scripting.Metadata.dll。

如何在Ironpython中使用日志记录模块?

1 个答案:

答案 0 :(得分:8)

将程序集添加到C#应用程序是不够的。 logging是用python编写的,它是标准库的一部分。您还必须将标准库添加到IRONPYTHONPATH。你可以这样做:

var engine = Python.CreateEngine();
var paths = engine.GetSearchPaths();
paths.Add(@"C:\Path\to\your\standard\library");
engine.SetSearchPaths(paths);

如果您需要标准库,则可能需要随应用程序一起提供。我的建议是压缩它,然后将zip文件添加到paths