2016-03-07 104 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