在不同计算机上的python脚本之间传递变量。

时间:2014-01-28 18:46:18

标签: python networking network-programming

我是编程新手。我想知道是否有办法将在python中的一台计算机上创建的变量发送到在同一网络上运行另一个python脚本的另一台计算机。基本上可以说当变量等于5时我想要另一个脚本打印5

4 个答案:

答案 0 :(得分:0)

一种简单的方法是通过Web服务。基本上你可以让ComputerB在一个端口上监听(例如80,81,8100等),并让你在ComputerA上的脚本通过http与它通话。

您可以使用托管在Web服务器中的简单框架(如web.pyDjango)来调用一些设置此变量的Python代码。

答案 1 :(得分:0)

这实际上取决于您的技术要求,程序架构等。但基本上我可以建议您使用某种消息队列服务在您的应用程序之间进行通信。例如RabbitMQ。

答案 2 :(得分:0)

尝试ZeroMQ

  

ØMQ(也称为ZeroMQ,0MQ或zmq)看起来像一个嵌入式   网络库,但就像一个并发框架。它给你   在各种传输中携带原子消息的套接字   进程内,进程间,TCP和多播。您可以连接套接字   N-to-N具有扇出,发布子,任务分配等模式   请求 - 应答

答案 3 :(得分:-4)

尝试使用socket pickle,pickle会将变量转换为字符串,然后就可以恢复其他服务器上的对象了

只是主要功能,这段代码不能单独使用

socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind((host, port))
conn, addr = sock.accept()
conn.sendall(pickle.dumps({'somedictionary':data}))

使用

恢复数据
dict=pickle.loads(bufferreceived)