2012-04-01 9 views
2
 ScriptEngine PythonEngine = Python.CreateEngine();    
     Scope = PythonEngine.CreateScope(); 

     Point P = new Point(-1,1); 
     Scope.SetVariable("QWE", P); 

     PythonEngine.Execute("QWE.X = 0"); 

     Console.WriteLine(P); 

"UnboundNameException war Unhandle"einen Punkt ändern, UnboundNameException

"global name 'QWE' nicht definiert ist"

Ich habe keine Ahnung, was diese Ausnahme bedeutet, noch wie es zu lösen, und Ich glaube, ich mache etwas ziemlich einfaches ... oder?

Antwort

3

Ihr Motor ist nicht an das Oszilloskop gebunden. Ändern Sie folgende Zeile:

PythonEngine.Execute("QWE.X = 0", scope); 

Der Fehler bedeutet, dass die Variable "QWE" nicht im Code deklariert ist. Dies lag daran, dass die Engine nicht im definierten Umfang ausgeführt wurde (wo QWE deklariert wurde).

Ich würde empfehlen, diese link zu lesen, um mit IronPython zu beginnen. Sie haben Codebeispiele und einige Erklärungen.