以下のような引数全てにデフォルト値があるメソッドがあるとします。
def greeting(s1: str='Hello', s2: str='World'):
print(s1 + ' ' + s2)
基本は、引数に値を渡していればその値を、渡していなければデフォルト値が適応されます。
greeting() # Hello World
greeting('Good') # Good World
greeting('Good', 'morning') # Good morning
例えば、
ここで Hello morning
と表示したい場合、以下でも実質一緒ですが、
デフォルト値と同じ値を渡すのは微妙ですね。
greeting('Hello', 'morning') # Hello morning
その場合、値を渡す変数名を指定して呼び出せば
適応されます。
greeting(s2='morning') # Hello morning