Неожиданное добавление токена - PullRequest
0 голосов
/ 11 сентября 2018

Я написал приложение для простого языкового переводчика с использованием IronPython и вызываю код на Python через консольное приложение C #.Я тестировал код Python отдельно, и он отлично работает.Однако, когда я вызываю код Python через приложение C #, оно всегда выдает сообщение об ошибке Microsoft.Scripting.SyntaxErrorException: 'неожиданный токен' append '' .

ScriptEngine engine = Python.CreateEngine();
ScriptSource source = engine.CreateScriptSourceFromFile(@"D:\Projects\Translator.py");

ICollection<string> Paths = engine.GetSearchPaths();
Paths.Add(@"C:\Program Files\Python37\Lib\");
Paths.Add(@"C:\Program Files\Python37\Lib\site-packages\");
engine.SetSearchPaths(Paths);

ScriptScope scope = engine.CreateScope();
source.Execute(scope);

dynamic GoogleTranslator = scope.GetVariable("GoogleTranslator");
dynamic gTranslator = GoogleTranslator();
gTranslator.SetInfo("'Привет, корова мальчик'");
var result = gTranslator.Translate();

Console.Write(result);
Console.Read();

---------- Код Python -----------

from googletrans import Translator

class GoogleTranslator(object):
    Text = ""
    Dest  = ""

    def SetInfo(self, text, dest = 'en'):
        self.Text = text
        self.Dest = dest

    def Translate(self):
        translator = Translator()
        result = translator.translate(self.Text, self.Dest)
        return result.text

Может кто-нибудь сказать мне, в чем проблема с кодом.Ошибка генерируется из «source.Execute (scope);»

...