2017-10-04 4 views
0

私が作成したクラスのインスタンスが作成されるたびに、別のオブジェクトが保持するオブジェクトのリストにそのオブジェクトを追加する必要があります。この例では、新しいオブジェクトをリストにどのように追加しますか?

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() 
+0

尻叩きプログラム:あなたは、あなたのMyInstanceクラスの__init__関数から次の行を削除することができます

def create_bum(self, name): self.canvas.append(MyInstance(name)) 

:このように見えるようにあなたのcreate_bum機能を変更します。面白い。 – Steampunkery

答えて

2

ほとんどの場合、間違った場所に1行しかありません。 ...

Something.canvas.append(self) 
関連する問題