ホームページ >バックエンド開発 >Python チュートリアル >名前を文字列として使用して Python 関数を動的に呼び出すにはどうすればよいですか?
文字列名による関数の呼び出し
文字列に格納された名前を使用して関数を動的に呼び出す必要があるシナリオがあると想像してください。これは、非常に動的な環境やメタプログラミングが関与するシナリオで発生する可能性があります。 Python でこれにアプローチする方法は次のとおりです:
重要なテクニックは Python の getattr 関数にあります。これを使用すると、文字列として名前を指定したオブジェクトから属性またはメソッドを取得できます。モジュールの関数を動的に呼び出すには:
import foo func_name = "bar" bar = getattr(foo, func_name) result = bar()
この例では、関数バーを持つモジュール foo を想定しています。 getattr(foo, 'bar') は bar 関数参照を取得します。 result = bar() を呼び出すと関数が実行され、その出力が result に格納されます。
特に、getattr はモジュールレベルの関数だけでなく、クラス インスタンス、クラス メソッドなどにも使用できます。その多用途性により、Python の動的機能をナビゲートするための不可欠なツールとなっています。
以上が名前を文字列として使用して Python 関数を動的に呼び出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。