0
動的に指定されたモジュールからクラス参照を動的に指定し、それを使用するサードパーティライブラリにそのクラス参照を渡したいと考えています。しかし、私はそれを行うときにクラス自体(したがって、クラスの__init__
メソッド)を呼び出すことは望ましくありません。これは、ライブラリが行うことです。__init__を呼び出さずにPythonでクラス参照を取得する方法
私は現在、これを持っている:
import importlib
import thirdpartylib
# Load the module
the_module = importlib.import_module('my_module')
# Now the class
the_class = getattr(the_module, 'MyClass')()
thirdpartylib.process(the_class)
しかし、もちろん、getattr()
は私が望んでいない__init__
方法を実行します
インスタンスを作成せずにクラスへの参照を渡して、__init__
をトリガーするにはどうすればよいですか?
'getattr'ではなく'() 'のためにインスタンスが返されています。 –
@AshwiniChaudhary - ありがとう。それでおしまい;私の一部の見落とし。私はそれらを逃した。あなたが望むならそれを答えとして投稿すれば、私は受け入れます。 –