Pythonで型変数っぽいこと
Pythonで、インスタンスを作る時のオブジェクトの型を実行時に決めるにはどうすればいいのか、と少し悩んだ
つまり
ふつうPythonであるオブジェクトのインスタンスを作るときは、
instance = MyClass(*param)
とするけれど、ここで、どのクラスのオブジェクトを作るかを実行時に変化するような状況。
apply関数を使うのかなーと思って試したけどどうもうまくいかない。
結局、単に
var = MyClass instance = var(*param)
でいいらしい。呆気無すぎる…
実験
class Test: def __init__(self,message): self.message=message def echo(self): print self.message a=Test b = a("hoge") b.echo()
結果
うむ。あっけない。基本がなっていなかったようです。