2010-04-02 2 views
1

Я хочу выполнить код python с C# со следующим кодом.Нет модуля с именем difflib

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

У меня проблема с источником строки.Execute(), я получил ошибку «Нет модуля с именем difflib».
Что не так в моем коде?

Это мой код python (extracter.py).

import re 
import itertools 
import difflib 
print "Hello" 
+0

Это настоящий выстрел в темноте, но какая версия Python вы используете? –

+0

Я использую IronPython 2.6 (2.6.10920.0) на .NET 2.0.50727.1433 – wearetherock

ответ

3

Это выглядит как ваш двигатель не имеет доступа к стандартной библиотеке Python - это не видит difflib.py. Либо установите sys.path, либо скопируйте difflib.py из папки Python 2.6 в папку f:\script.

re и itertools модули написаны на C# и являются частью IronPython.modules.dll - вот почему импорт их работает.

Смежные вопросы