1

我想使用以下代码从 C# 执行 python 代码。

   static void Main(string[] args)
    {
        ScriptEngine engine = Python.CreateEngine();
        ScriptSource source = engine.CreateScriptSourceFromFile(@"F:\Script\extracter.py");
        source.Execute();
    }

我在 source.Execute() 处遇到问题,出现错误“没有名为 difflib 的模块”。
我的代码有什么问题?

这是我的 python 代码(extracter.py)。

import re
import itertools
import difflib
print "Hello"
4

1 回答 1

3

这看起来您的引擎无法访问 Python 标准库 - 它看不到difflib.py. 修复sys.pathdifflib.py从 Python 2.6 复制到f:\script文件夹。

reitertools模块是用 C# 编写的,并且是其中的一部分IronPython.modules.dll——这就是导入它们起作用的原因。

于 2010-04-02T13:48:24.773 回答