Python程序通信

时间:2014-09-12 17:59:41

标签: python controls communication

我有一个(可能)简单的问题,互联网似乎毫无帮助。我想让几个python程序在另一个python程序中进行交互,并且不知道如何让它们相互输入。我最终的想法是(作为概念证明)让一个程序充当环境,其他程序充当该环境中的生物。让我澄清一下:我相信你已经看到那些模拟自然环境的程序,其中的生物相互作用。我想在较小的范围内做同样的事情(文本代替花哨的3D图形,如果有的话)。这样做的最终目标不是拥有一个复杂的生态系统,而是要看看我能在多大程度上推动程序之间的通信(以及我的计算机的功能)。 附:我想继续从IDLE或命令行运行它。

2 个答案:

答案 0 :(得分:0)

在程序或组件之间传递消息有很多选择:

  1. 您可以编写其他程序可以读取和处理的输出文件。您希望查看消费者是否可以查看文件的目录并在文件到达时做出反应。
  2. 您可以使它们成为通过套接字或某些更高级别协议(如HTTP)交换消息的分布式组件。通信可以是同步的也可以是异步的。
  3. 您可以将它们作为生成器写入消息队列或主题以及消费者收听事件的队列或主题进行连接。

答案 1 :(得分:0)

您可以简单地设置模块结构。例如,写一个main.py来调用或导入其他“程序”中的数据。

我会在你的案例中使用面向对象的方法。

例如,如果您的程序设置如下:

main.py
prog1.py

我会创建一个main.py,例如

import prog1
creature_obj = prog1.new_creature() # where new_creature is a class in prog1
...