Python程序之间的简单通信?

Python程序之间的简单通信?,python,sockets,Python,Sockets,我有两个python程序。 一种是数据采集程序。 另一种是使用Tensorflow进行分析和预测 (在Windows OS.python3.5.local上) 数据采集程序需要32位env,因为它使用的是API。 正如您所知,另一个程序需要64位env,因为TensorFlow 所以 问:我只需要向TensorFlow发送一个dict数据,它会返回一个整数作为返回 互相发送数据最简单的方法是什么 谢谢您的时间。最简单的方法是让一个程序将数据保存到一个文件中,然后让另一个程序读取该文件。推荐的方法

我有两个python程序。 一种是数据采集程序。 另一种是使用Tensorflow进行分析和预测

(在Windows OS.python3.5.local上)

数据采集程序需要32位env,因为它使用的是API。 正如您所知,另一个程序需要64位env,因为TensorFlow

所以

问:我只需要向TensorFlow发送一个
dict
数据,它会返回一个整数作为返回

互相发送数据最简单的方法是什么

谢谢您的时间。

最简单的方法是让一个程序将数据保存到一个文件中,然后让另一个程序读取该文件。推荐的方法是通过模块使用JSON

然而,根据您的用例,这可能不是最好的方法。套接字是一种常见的解决方案。它们也非常健壮,但在我看来,它们的杀伤力太大了


有关更多信息,我建议您查看Python团队维护的、可用于进程间通信的机制。

如果您希望通过网络连接这两个程序,我建议您查看一下?基本上,这使您能够通过网络执行正常的Python方法调用,以便在另一台计算机或另一个Python进程上运行代码。您(几乎)不必担心它的低级网络细节。

您发送的列表中有什么?整数?约翰,我弄错了。它不是列表,而是dict。项都是整数。最简单的方法可能是一方面序列化数据(json/csv/pickle/whatever)并将其转储到标准文件,另一方面读取文件并反序列化。您还可以探索更有效的解决方案,如套接字或共享内存。@jedwards我同意,但在同步写入和读取的连续数据方面可能存在问题。一个稍微复杂一点的解决方案是通过管道(如果在Windows中32位和64位进程之间可用)或通过套接字发送序列化数据。不过,这仍然需要某种协议来确保所有数据都被传递。
import json

#Write
with open('file.txt', 'w') as file:
    file.write(json.dumps(myDict))

#Read
with open('file.txt') as file:
    myDict = json.load(json_data)