Pythonで可変長引数(*args、**kwargs)の使い方についてソースコード付きでまとめました。
可変長引数(*args、**kwargs)
可変長引数とは、その名の通り「引数の個数が固定でなく可変である」ものです。
関数やメソッドの引数を可変長引数にすることで「任意の数の引数を与える」ことができます。
Pythonには、2種類の可変長引数(*args、**kwargs)が用意されています。
可変長引数① *args
引数名の前にアスタリスク(*)を1つ付けると、可変長引数として定義されます。
下の実行例のように可変長引数に複数の値を入れると、「タプル」で関数やメソッドに引き渡されます。
def myfunc(*args): print(args) # ('hello', 'world', 1) myfunc('hello', 'world', 1)
可変長引数② **kwargs
引数名の前にアスタリスク(*)を2つ付けると、可変長引数として定義されます。
ただし、先程の1つの場合と違って、「ディクショナリ型(辞書型)」で引き渡されます。
def myfunc(**kwargs): print(kwargs) # {'hello': 1, 'world': 'untan'} myfunc(hello=1, world='untan')
関連ページ
【Python超入門】使い方とサンプル集
Pythonの使い方について、基礎文法から応用例まで入門者向けに解説します。
コメント