いくつかの条件に応じて、モジュールをクラスに動的にインポートしたいと考えています。
class Test(object):
def __init__ (self,condition):
if condition:
import module1 as mymodule
else:
import module2 as mymodule
self.mymodule = mymodule
def doTest(self):
self.mymodule.doMyTest
ここで、module1 と module2 は異なる方法で doMyTest を実装します。
と呼ぶ
mytest1 = Test(true) # Use module1
mytest2.doTest()
mytest2 = Test(false) # Use module2
mytest2.doTest()
これは機能しますが、もっと慣用的な方法はありますか? 考えられる問題はありますか?