Pythonのキーワード引数
仮引数の最後に**name形式のものがると、それまでの仮引数に対応したものをのぞくすべてのキーワード引数が入った辞書を受け取ります。
〜Pythonチュートリアルより〜
※仮引数とは関数を定義した際の引数
>>> def func(*arguments, **keywords): ... for arg in arguments:print arg ... print '-'*20 ... keys = keywords.keys() ... keys.sort() ... for kw in keys:print kw, ':', keywords[kw] ... >>> func('a', 'b', 'c', 'd', one=1, two=2, three=3) a b c d -------------------- one : 1 three : 3 two : 2
ちなみに……
これはシンタクスエラーとなる。
>>> def func(**keywords, *arguments): File "<stdin>", line 1 def func(**keywords, *arguments): ^ SyntaxError: invalid syntax
**name形式の引数は仮引数に最後になければならない。