TypeError:'Monitor'对象不可订阅

时间:2013-10-01 15:59:32

标签: python

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

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'对象不可订阅

我哪里错了?我不能有像node.monitors = [,]?

这样的东西

1 个答案:

答案 0 :(得分:1)

我想我是最糟糕的开发者! m变量定义2次,一次输入为m in监视器,两次in [m.platform_id for m in node_monitors] ...

然后在更换其中一个m

时解决了问题