環境

python3

キーワード引数

def func1(value1, value2):
  print(f'{value1}, {value2}')

渡された引数を表示するだけの簡単な関数func1は以下の呼び出し方のいずれでも呼び出せる。

func1(1, 'a')
func1(value1=1, value2='a')
func1(1, value2='a')

キーワード専用引数

def func2(value1, *, value2):
  print(f'{value1}, {value2}')

この関数の定義のように引数の宣言に*をつけた場合は、*以降の引数はキーワード引数にしないと呼び出せなくなる。

func2(1, value2='a')        # 呼び出しOK
func2(1, 'a')               # エラー

引数が多い場合とか、同じような値を複数渡す場合には、キーワード専用引数にしたほうが意図がわかりやすくなる。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.