2016-03-07 51 views
3

我希望有人能夠幫助我在這裏。我對C#比較陌生,正在嘗試執行一些我在C#winform應用程序中編寫的Python代碼。從C運行幾個python腳本#

我想要做的是從winform中的文本框輸入一個名稱,並讓它通過python腳本處理,並將結果返回到winform上的另一個文本框中。

我發現了幾個如何在C#中執行單個腳本的好例子,但我在理解如何引用多個腳本時遇到了一些麻煩。

舉個例子,我有一個python腳本引用在代碼中的其他兩個腳本

from FindTelephone import * 
from FindAddress import * 

def createPerson(name) 
    telephone = FindTelephone(name) 
    address = FindAddress(name) 
.... 

有沒有辦法有C#點到我的其他Python腳本的引用運行我的主要腳本之前?

在此先感謝您的幫助。

馬歇爾

+1

您可能需要尋找一個叫'鐵Python' – Ian

+1

我沒有親自做過這個工具,但是這看起來很合法的:http://www.codeproject.com/文章/ 657698/Python-Visual-Studio-and-Csharp-So-Sweet – Jedediah

+3

[從c#運行python腳本]的可能重複(http://stackoverflow.com/questions/11779143/run-a-python-script- from-c-sharp) – MarkyPython

回答

3

像這些職位?: Call Python function from c# (.NET)run a python script from c#

或者

你可能想看看pythonnet

或者

如果你想這樣做,那麼我建議而不是正常的Python的使用Iron Python的easyer方式。 IronPython是一種與.NET Framework緊密集成的Python編程語言的開源實現。意味着使用C#和Windows窗體很容易,看起來幾乎就像普通的Python一樣。

或者

對於如果你正在使用Visual Studio,VS有一些Python的工具,可以幫助你在你的追求。 Link。你可以找到更多的文檔Here這最後一個鏈接是由Jedediah從評論提供,所以如果你喜歡這最後一個鏈接投票他的評論。

其他方便的鏈接:Integrating Python With Other Languages

+0

[標籤:IronPython]肯定比通過Processes調用python的優先級更高。特別是如果你想返回的不僅僅是一個數字或字符串。 – RoadieRich

+0

謝謝大家的精彩幫助和討論!鐵Python將完成這項工作。 – MarshallTrufant