Python でメソッドのパラメータ名を抽出するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-02 22:59:33
オリジナル
775 人が閲覧しました

How Can I Extract Method Parameter Names in Python?

Python を使用したメソッド パラメーター名の抽出

Python では、メソッド パラメーターの名前を決定することは、コードのリファクタリング、デバッグ、または文書化にとって重要です。 。次のように定義された関数を考えます。

<code class="python">def a_method(arg1, arg2):
    pass</code>
ログイン後にコピー

パラメータの名前をタプルとして取得するには、いくつかの方法があります。

検査モジュールを使用する

検査モジュールは、コード オブジェクトを検査するための広範な関数セットを提供します。これは、inspect.getfullargspec():

<code class="python">import inspect
inspect.getfullargspec(a_method)
# Output: (['arg1', 'arg2'], None, None, None)</code>
ログイン後にコピー

によるパラメータ名の抽出をサポートします。これは、位置引数 (この場合は ('arg1', 'arg2')) の名前も含むタプルを返します。キーワード、変数引数、およびデフォルト値 (この例では関係ありません) に関する情報として。

inspect.signature() の使用

Python 3.3 以降、 Inspection.signature() 関数は、呼び出し可能な署名の包括的なビューを提供します。

<code class="python">inspect.signature(a_method)
# Output: <Signature (a, b, c=4, *arglist, **keywords)></code>
ログイン後にコピー

これにより、デフォルト値や可変長引数を含むすべてのパラメーター情報を含む署名が明らかになります。

注意事項

一部の呼び出し可能関数、特に CPython の組み込み関数は、イントロスペクトできない場合があります。これらを検査しようとすると、ValueError が発生する可能性があります。

以上がPython でメソッドのパラメータ名を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート