2012-11-15 28 views
1

可能重複:
Instantiating a python class in C#
Embedding IronPython in C#需要幫助從C#調用IronPython中的函數

我想這一點:link

C#:

private void Form1_Load(object sender, EventArgs e) 
{ 
    var ipy = Python.CreateRuntime(); 
    dynamic test = ipy.UseFile(@"C:\Users\Admin\Desktop\Test.py"); 
    textBox1.Text = test.Simple(); 
} 

的Python:

def Simple(): 
    print "Hello from Python" 

沒有錯誤,當我運行它,文本框保持空白。我做錯了什麼?

+1

不知道Python,但你不應該從'Simple'函數返回的東西,而不是隻'print'? –

+0

@AlexeiLevenkov這是事實,他從例子中得到的鏈接是打印到控制檯窗口。他應該用Python的''Hello''來代替。 – 3aw5TZetdf

+0

是的,你絕對正確的......我雖然C#採取CMD的輸出,並將其傳遞給C#...感謝您的幫助 – a1204773

回答

2

您的Simple函數不會返回任何內容,它僅將輸出打印到控制檯print。像return "Hello from Python"應該給你你想要的結果。

邊注:您可以截取控制檯輸出,但它可能不是你所感興趣的東西