ホームページ  >  記事  >  バックエンド開発  >  Python で関数のパラメータ名を取得する方法

Python で関数のパラメータ名を取得する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-03 15:19:02477ブラウズ

How to Retrieve Function Parameter Names in Python?

Python での関数パラメーター名の取得

Python では、通常、関数パラメーターはプレースホルダー変数を使用して定義されます。これらの変数は関数の定義内で明示的に名前が付けられていますが、外部から関数を検査する場合は簡単にアクセスできない場合があります。

inspect.getfullargspec

検査モジュールは、関数の引数リストを取得するための便利なメソッド。 Inspection.getfullargspec(function) を呼び出すと (function がターゲット関数)、パラメーター名を含むタプルを取得できます。

例:

<code class="python">def a_method(arg1, arg2):
    pass

print(inspect.getfullargspec(a_method))  # Output: (['arg1', 'arg2'], None, None, None)</code>

これこの例では、パラメーター名 ("arg1" と "arg2") をタプルとして出力します。

inspect.signature (Python 3.3 )

Python 3.3 以降、inspect.signature () は、関数シグネチャを検査するためのより高度なアプローチを提供します。これは、関数のパラメーターを表す Signature オブジェクト (その型とデフォルト値を含む) を返します。

例:

<code class="python">def foo(a, b, c=4, *arglist, **keywords):
    pass

print(inspect.signature(foo))  # Output: <Signature (a, b, c=4, *arglist, **keywords)></code>

注:

組み込み関数などの一部の呼び出し可能関数は、すべての Python 実装でイントロスペクトできない場合があります。このような場合、inspect.getfullargspec() または Inspection.signature() を使用すると、ValueError が発生する可能性があります。

以上がPython で関数のパラメータ名を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。