我可以从另一个正在运行的python脚本访问列表

时间:2017-10-29 17:34:42

标签: python python-3.x interprocess

如果我有两个脚本,一个有一个列表,当前正在运行,另一个需要在第一个运行时访问该列表,我该怎么做?

实施例

脚本1

import random
example_list = []
while True:
    example_list.append(random.randint(0,9))

脚本2

x = example_list[i]

我无法更改脚本1.
如何从脚本2访问脚本1中创建的列表?

P.S。这只是一个例子,所以它的目的并不重要。

3 个答案:

答案 0 :(得分:0)

我认为您正在寻找的是进程间通信(IPC),其中第一个脚本填充变量,第二个脚本想要使用它。 IPC可能有多种机制 - 消息队列,共享文件等。 如果您的需求就像捕获列表内容一样简单(并且列表包含字符串,仅包含整数),以便其他脚本可以使用它,您可以将其作为python代码或JSON转储到已知文件中,并从第二个脚本中读取它。您可以挑选数据并捕获文件中的pickle数据并在第二个脚本中进行unpickle - 提供列表中的数据是可选择的。

答案 1 :(得分:0)

如果您可以使用多处理(一个进程启动另一个进程),那么您可以使用多处理功能共享列表。看看Multiprocesssing

答案 2 :(得分:0)

没有!你做不了。至少在python中。

您无法在另一个正在运行的进程中访问变量。