簡體   English   中英

使用 IPC 在 Python 和 C# 之間進行通信的最簡單方法?

[英]Simplest way to communicate between Python and C# using IPC?

我有一些 C# 代碼需要調用 Python 腳本數千次,每次傳遞一個字符串,然后期望返回一個浮點數。 python 腳本可以使用任何版本的 Python 運行,所以我不能使用 Iron python。 建議我使用 IPC 命名管道。 我沒有這方面的經驗,並且無法弄清楚如何在 C# 和 Python 之間執行此操作。 這是一個簡單的過程,還是我正在尋找大量的工作? 這是解決我的問題的最佳方法嗎?

使用 zeromq。

  • 允許非常輕的消息傳遞而不需要經紀人
  • 可用於許多平台
  • 可以通過 TCP 套接字、unix 套接字或進程內部進行通信

這是我使用 zeromq 的回答https://stackoverflow.com/a/23227631/346478

它用於不同 Python 程序之間的消息傳遞,但在其他平台之間可以使用完全相同的通信方法。 只要保持傳遞的消息可互操作 - 雙方都必須正確理解內容。 您可以使用二進制數據,但通常 json 表示也可以快速輕松地工作。 但是有許多序列化框架,如結果緩沖區等,它們可能會幫助您對結果進行編碼。

根據您所說的,您可以連接到python進程並捕獲標准輸出文本。 簡單、快速、可靠!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM