【问题标题】:Pass a String in Python to a String in C#将 Python 中的字符串传递给 C# 中的字符串
【发布时间】:2020-04-12 04:52:26
【问题描述】:

我知道标题听起来有点奇怪,但我想知道是否有一种好方法可以将 python 中的字符串值传递给 c# 中的字符串值?

我有一个神经网络,我在 python 中使用它来检测图像中的对象。对于检测到的每个对象,它还会获取一个存储在字符串中的神经网络认为它检测到的对象的标识符。我还有一个正在创建的 C# 应用程序,它通过一个 bat 文件运行我的 Python 脚本。我想要做的是从我的 Python 脚本中获取字符串标识符,这样我就可以在我的 C# 应用程序中将它用作字符串。我已经考虑过使用一个 txt 文件,我将从我的 Python 脚本中输出字符串并让我的 C# 应用程序读回 txt。有没有更好的方法来实现这一目标?

【问题讨论】:

  • 更好?更好怎么办?你目前的做事方式有什么问题?那行得通,不是吗?你在找什么。
  • @sommmen 如果我使用 txt 文件,那么这是我必须使用的另一个文件,既要写入它,又要以我正在使用的相应语言读取它。我想知道是否有一种方法可以将 python 字符串海峡传递给 c# 字符串。

标签: c# python string


【解决方案1】:

您可以将您的字符串作为命令行参数传递给 .net 程序(例如 myprog.exe

然后用Environment.GetCommandLineArguments读出来 https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/main-and-command-args/

如果您需要来回进行通信,最简单的方法是使用 TCP/UDP 客户端/服务器。在 c# 和 python 中可用。 Windows 上还有其他机制,例如命名管道,但 tcp 是最简单的。

这实际上有一个很好的示例,你可以使用,但是谷歌一下; Send Data from [Python Client] to [C# Server] using Socket

顺便说一句,这称为进程间通信,这是一个很棒的谷歌术语。 另见:

What is the simplest method of inter-process communication between 2 C# processes?

【讨论】:

    猜你喜欢
    • 2021-04-27
    • 2014-01-21
    • 2014-03-19
    • 1970-01-01
    • 2018-05-20
    • 2013-05-21
    • 2011-11-26
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多