如果我有一个python脚本运行(全文Tkinter的GUI和一切),我想通过它收集实时数据(存储在内部阵列和这样的)到另一个python脚本,这样做的最好方法是什么?Python脚本之间传递数据,而单独运行
我不能简单地导入剧本一到脚本B,因为它会创建脚本A的新实例,而不是在已经运行的脚本A.
我觉得这样做是唯一的方式访问任何变量通过让脚本A写入文件,然后脚本B从文件中获取数据。这是不太理想但仿佛脚本B试图读取文件的脚本A在已经写会出事。我又找了更快的速度向两个程序之间的通信。
编辑: 这里是要求的例子。我知道为什么,这并不工作,但它是需要达到什么样的基本前提。我的源代码很长,不幸的是保密,所以它不会在这里帮助。总之,一个脚本运行的Tkinter和收集数据,而脚本B是views.py作为Django的一部分,但我希望可以做到这一点像Python的一部分。
脚本A
import time
i = 0
def return_data():
return i
if __name__ == "__main__":
while True:
i = i + 1
print i
time.sleep(.01)
脚本B
import time
from scriptA import return_data
if __name__ == '__main__':
while True:
print return_data() # from script A
time.sleep(1)
您应该能够导入一个模块到另一实例的单个实例(如果有必要使用单),然后将属性/值分配给此实例,以便您可以根据需要在辅助脚本中读取它。 – JacobIRR
如果脚本不是太长或敏感的,这将有助于看到源代码 – JacobIRR
也许你可以使用文件插座?这似乎是流式传输数据的一种选择。 – Evert