我遵循這裏最好的答案,以一個T,用Pyc.py編譯的例子。IronPython,導入模塊
Build Python scripts and call methods from C#
我在pyScope = pyEngine.ImportModule("MyClass");
no module named MyClass
我相信這是一個錯誤,因爲有時候與Pyc.py重新編譯會產生一個dll ImportModule認識得到一個異常,但有時它不。
結論:正如下面digEmAll所指出的那樣,用Pyc.py編譯模塊可以產生隨機結果。而是手動調用clr.CompileModules。
啊,要導入的模塊仍然採用組件創建的腳本的名稱,而不是組件本身。我可以證實這是真的。 – 2010-09-13 22:01:35
謝謝,但這並沒有解決問題,因爲'MyClass'這個短語不會出現在我的項目中的任何地方,而只是'MyClass'。我認爲Jeff M對版本的評論是我下一步調查的途徑。您使用的是哪個版本的IronPython和.NET?一定會想要從開發者那裏聽到這件事。 – cory 2010-09-13 22:02:41
嘗試重命名您的.py,但不是MyClass.py。無論如何,我成功地運行它,針對.NET 2.0/4.0,IronPython.dll 2.6.10920.0 – digEmAll 2010-09-13 22:08:04