Python 関数内のパラメータ名の取得
Python では、関数のパラメータのイントロスペクトはさまざまな目的に役立ちます。よくある質問の 1 つは、特定の関数のパラメーター名のリストをプログラムで取得する方法です。
組み込み Python メソッド
検査モジュールは、次のような包括的なイントロスペクション機能を提供します。関数を含む Python オブジェクト。ただし、パラメーター情報の取得によく使用される Inspection.getargspec() メソッドと Inspection.signature() メソッドは、Python 3.10 以降のバージョンでは非推奨になりました。
関数メタデータを使用した代替アプローチ
幸いなことに、基礎となる関数メタデータを活用する別のアプローチがあります。
<code class="python">def list_parameter_names(func): """Returns a list of parameter names for a given function.""" # Get the function's code object. code = func.__code__ # The co_varnames attribute contains a tuple of parameter names. return code.co_varnames</code>
このコード スニペットは、関数を引数として受け取り、パラメータ名のリスト。
使用例
ここでは、list_parameter_names() 関数の使用方法を示す例を示します。
<code class="python">def my_function(a, b, c): ... parameter_names = list_parameter_names(my_function) print(parameter_names) # Output: ['a', 'b', 'c']</code>
追加の考慮事項
このメソッドは、変更できない不変オブジェクトである関数のコード オブジェクトに依存していることに注意してください。これは、関数の作成後に関数のパラメーター リストを変更しても、このメソッドで取得したパラメーター名には反映されないことを意味します。
以上がPython 関数のパラメータ名のリストを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。