我有两个 Python 程序。我们称它们为 Prog1.py 和 Prog2.py 。Prog1 正在帮助我从外部设备获取实时数据。到目前为止,当它获得数据时,它会在屏幕上打印出来。有一个 while 循环在运行,在每次迭代中它都会打印出获取的新数据集。现在 Prog2 是一个使用 PyQtGraph 构建的 Python 程序,旨在像监视器一样实时绘制数据。截至目前,Prog2 所做的是(即,当它单独运行时),它绘制已经获取的数据。这是一个动人的情节。所以 Prog2.py 有一个更新函数,它被定时器以指定的时间间隔重复调用,以便用下一个数据点更新图形(使其向右移动)。
由于 Prog1 和 Prog2 是具有自己的事件循环过程的独立事件,我不确定如何链接它们。我认为一个天真的想法是并行运行 Prog1.py 和 Prog2.py 并要求 Prog1.py 将数据保存到文件中(也许腌制它?)并要求 Prog2.py 从中读取然后绘制图形。但我不相信这一点。这看起来很脏。不知何故,我想在 Prog1.py 中运行整个 Prog2.py 代码。有没有一种干净的方法可以做到这一点?
编辑-代码
程序1.py
/*
Code to get data from USB
*/
def main():
while 1:
data = get_data()
print data
main()
Prog2.py 是 PyQtGraph 代码,通过定时器来更新图形并使其滚动