C#与Python通信的最快方法是什么?

use*_*130 1 c# python

我需要一种方法让c#与任意版本的Python进行通信.用户传递Python的路径,因此他们可以选择他们想要的任何版本.我需要能够将一个字符串传递给Python,并获得一个浮点数.这需要发生几千次.现在我只是使用标准输入/输出,但它似乎非常慢.有没有更快的方法来做到这一点?

Ree*_*sey 5

通常,处理此类场景的"最佳"方法是使用IronPython而不是让用户提供自己的Python运行时.

您也可以使用Python for .NET,但这又会将您绑定到特定版本的Python.

如果您控制Python中的调用,但需要任意版本的python,您可以使用通用的消息服务.一种选择是通过管道设置IPC通道,这些管道在Python和.NET中受支持.这将提供快速的C# - > Python-> C#通信,同时保持流程分离.

如果您需要python的任意版本和安装,那么通过shell进程执行和获取信息可能是唯一的选择.