0

我脑子里有东西,但没有成功我有一个节点。在节点上,我们可以附加监视器。然后我有:

class Node:

    def __init__(self):
        self.components = []
        self.monitors = []

class Monitor(object):

    def __init__(self, platform_id):
        self.platform_id = platform_id

我从服务器收到监视器列表,如果所有这些监视器未链接到节点,则它们必须是:

def get_or_create_monitor(self, monitors):
        node_monitors = self.node.monitors
        for m in monitors:
            if m['id'] not in [m.platform_id for m in node_monitors]:
                monitor = Monitor(m['id'])

                node_monitors.append(monitor)

问题是我启动此功能时的控制台响应: TypeError: 'Monitor' object is not subscriptable

我哪里错了?我不能有类似 node.monitors = [, ] 的东西吗?

4

1 回答 1

1

我想我是最差的开发商!m 变量定义了 2 次,一次用于 m 在监视器中,一次用于 [m.platform_id for m in node_monitors] ...

然后在更换其中一个 m 时问题解决了

于 2013-10-01T16:12:40.183 回答