Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python関数内のパラメータ名のリストを取得するにはどうすればよいですか?


関数またはfunction[something]から引数の数と名前を抽出して返す( "arg1"、 "arg2")には、inspectモジュールを使用します。

指定されたコードは、inspectモジュールを使用して次のように記述され、関数aMethodおよびfoo内のパラメーターを検索します。

import inspect
def aMethod(arg1, arg2): pass
print(inspect.getargspec(aMethod))
def foo(a,b,c=4, *arglist, **keywords): pass
print(inspect.getargspec(foo))
出力
ArgSpec(args=['arg1', 'arg2'], varargs=None, keywords=None, defaults=None)
ArgSpec(args=['a', 'b', 'c'], varargs='arglist', keywords='keywords', defaults=(4,))

  1. Pythonでデフォルトのパラメータ値を関数に設定するにはどうすればよいですか?

    Pythonによるデフォルトのパラメータ値の処理は、ほとんどの新しいPythonプログラマーを悩ませることができる数少ないことの1つです。 問題の原因は、デフォルト値として「可変」オブジェクトを使用することです。つまり、リストや辞書など、その場で変更できる値です。 2番目の引数が指定されていない場合、関数が呼び出されるたびに新しいリストが作成されるため、期待される出力は次のようになります。 [12] [43] 関数が定義されると、新しいリストが1回作成され、その後の呼び出しごとに同じリストが使用されます。 Pythonのデフォルトの引数は、関数が呼び出されるたびではなく、関数が定義され

  2. Python関数からリストを返すにはどうすればよいですか?

    Python関数からリストを返す方法はたくさんあります。そのような関数の1つを以下に示します。 例 def retList():     list = []     for i in range(0,10):         list.append(i)     return list a = retList() print a 出力 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]