Python関数の可変パラメータ定義とそのパラメータ伝達方式の例の詳細
1657 ワード
この例では、Python関数の可変パラメータ定義とそのパラメータ伝達方法について説明します.皆さんの参考にしてください.具体的な分析は以下の通りである.
pythonの関数不定パラメータの定義形式は以下の通りです.
1、func(*args)
入力パラメータは、argsにメタグループとして存在します.たとえば、次のようにします.
2、func( **kwargs)
入力されたパラメータは、argsに辞書形式で存在します.たとえば、次のようにします.
3、両者を混用しても良い
func(*args, **kwargs)
入力順序は定義順序と同じでなければなりません.ここでは、パラメータリストを不定にし、キーワードパラメータ辞書などです.
ここで述べたことが皆さんのPythonプログラム設計に役立つことを願っています.
pythonの関数不定パラメータの定義形式は以下の通りです.
1、func(*args)
入力パラメータは、argsにメタグループとして存在します.たとえば、次のようにします.
def func(*args):
print args
>>> func(1,2,3)
(1, 2, 3)
>>> func(*[1,2,3]) #
(1, 2, 3)
2、func( **kwargs)
入力されたパラメータは、argsに辞書形式で存在します.たとえば、次のようにします.
def func(**kwargs):
print kwargs
>>> func(a = 1,b = 2, c = 3)
{'a': 1, 'c': 3, 'b': 2}
>>> func(**{'a':1, 'b':2, 'c':3}) #
{'a': 1, 'c': 3, 'b': 2}
3、両者を混用しても良い
func(*args, **kwargs)
入力順序は定義順序と同じでなければなりません.ここでは、パラメータリストを不定にし、キーワードパラメータ辞書などです.
def func(*args, **kwargs):
print args
print kwargs
>>> func(1,2,3)
(1, 2, 3)
{}
>>> func(*[1,2,3])
(1, 2, 3)
{}
>>> func(a = 1, b = 2, c = 3)
()
{'a': 1, 'c': 3, 'b': 2}
>>> func(**{'a':1, 'b':2, 'c':3})
()
{'a': 1, 'c': 3, 'b': 2}
>>> func(1,2,3, a = 4, b=5, c=6)
(1, 2, 3)
{'a': 4, 'c': 6, 'b': 5}
#
>>> func(1,2,3, a=4, b=5, c=6, 7)
SyntaxError: non-keyword arg after keyword arg
ここで述べたことが皆さんのPythonプログラム設計に役立つことを願っています.