如何在python中访问和修改一个脚本从另一个脚本创建的一个对象的内容?

时间:2015-04-01 18:30:43

标签: python python-2.7

我有三个用python编写的脚本。

  
      
  1. 初始化脚本
  2.   
  3. 包含自定义数据结构类
  4. 的脚本   
  5. 监控脚本。
  6.   

初始化脚本首先启动。它创建自定义数据结构的对象,然后启动监视脚本。 某些点的监视脚本将发送值以填充在初始化脚本中创建的对象。

因此,基本上有一个由初始化脚本创建的全局数据对象。监视脚本将向该对象添加数据。数据对象就像一个缓冲区,其中包含稍后要执行的任务。

如何完成从监控脚本向数据对象添加数据的任务?

示例脚本:

初始化脚本:

import monitorscript
import customDataStructure

# creates the object for the customDataStructure
# starts the monitor script

自定义数据结构:

class mydata(object):
    def __init__(self, arg1 = None, arg2 = None):
       self.arg1 = arg1
       self.arg2 = arg2

class mydata2(mydata):
    def __init__(self):
        self.queue = []
        self.length = 0
    def addTask(self, data): # adds a task to be executed into the buffer.
        self.queue.append(data) # data is a mydata object.
        self.length += 1
    # some other methods.

监控脚本:

# from this script I want to be able to add values to the data object created earlier.

如果我的问题不清楚或需要更多信息,请在评论中问我。 我可能会错过这里的整个编程概念。所以,如果你能告诉我我需要研究什么,我将非常感激。

简而言之,我需要能够使用另一个脚本更新一个脚本创建的数据对象。该数据对象是一个缓冲区,将定期单独处理。

1 个答案:

答案 0 :(得分:1)

除非您明确地将数据结构传递给监视器模块,否则您将遇到问题。 Globals存在于模块级别,即使将资源从一个模块导入另一个模块,也不会直接共享。