クラスに対してアトリビュートの動的な追加
クラスからインスタンスを作成後に、動的に新しくアトリビュートを追加することができます。
以下の例ではTestクラスのインスタンスtestに、関数add_funcを追加しました。dir()でアトリビュートの一覧を表示させた場合に、add_funcが追加されているのが見て取れます。
クラスTestの定義
class Test(): def __init__(self): print "init" def func(self): print "func"
実効結果
>>> from test import Test >>> test = Test() init >>> dir(test) ['__doc__', '__init__', '__module__', 'func'] >>> test.func() func >>> def add_func(): ... print "add_func" ... >>> test.add_func = add_func >>> test.add_func() add_func >>> dir(test) ['__doc__', '__init__', '__module__', 'add_func', 'func']