Python 在本例中,如何将新对象附加到列表中?

Python 在本例中,如何将新对象附加到列表中?,python,Python,每当创建我创建的类的实例时,我都希望将该对象附加到另一个对象所持有的对象列表中 class Something: def __init__(self): self.canvas = [] def create_bum(self, name): MyInstance(name) def spank_all(self): for butt in self.canvas: print ("You spank

每当创建我创建的类的实例时,我都希望将该对象附加到另一个对象所持有的对象列表中

class Something:
    def __init__(self):
        self.canvas = []
    def create_bum(self, name):
        MyInstance(name)
    def spank_all(self):
        for butt in self.canvas:
            print ("You spanked " + butt.name)

class MyInstance:
    def __init__(self, name):
        self.name = name
        Something.canvas.append(self) # How do I do this?

foo = Something()
foo.create_bum("bob")
foo.create_bum("alice")
foo.spank_all()

你基本上是对的,只是一行在错误的地方。将
create\u bum
函数修改如下:

def create_bum(self, name):
    self.canvas.append(MyInstance(name))
然后可以从
MyInstance
类的
\uuuuu init\uuuu
函数中删除以下行:

Something.canvas.append(self)

你基本上是对的,只是一行在错误的地方。将
create\u bum
函数修改如下:

def create_bum(self, name):
    self.canvas.append(MyInstance(name))
然后可以从
MyInstance
类的
\uuuuu init\uuuu
函数中删除以下行:

Something.canvas.append(self)

…拍屁股程序。有趣的…拍屁股节目。有趣。