複数のモジュールを収集する python パッケージがあります。これらのモジュールには、Component クラスから継承した複数のクラスがあります。これらのクラスの負荷を動的にし、いくつかのオブジェクトを動的に構築したいと思います。
ex:
package/module1.py
/module2.py
ではmodule1.py
、クラス Component から継承した複数のクラスがあり、 と同じでmodule2.py
、もちろんクラスとパッケージの数は不明です。最終的なユーザーは、どのオブジェクトを構成ファイルに構築する必要があるかを定義します。モジュールを繰り返し処理するために、動作している pkgutil.iter_modules を使用します。コンポーネントを構築する担当の機能から、私は次のようにします。
[...]
myPckge = __import__('package.module1', globals(), locals(), ['class1'], -1)
cmpt_object = locals()[component_name](self, component_prefix, *args)
[...]
ただし、クラスが認識されないため、これは機能しません。次は機能しますが、動的ではありません。
cmpt_object = myPckge.class1(self, component_prefix, *args)
お返事をありがとうございます