2016-11-02 4 views
0

2つ以上のデフォルトパラメータを持つ関数を定義すると、2番目または3番目などのパラメータを変更するにはどうすればよいでしょうか?例:他のパラメータを変更するときに最初のデフォルト関数パラメータを変更しない方法

>>>def f(a=10,b=5,c=7): 
     return (a*b*c)  

aの元の値を保持したい場合、bまたはcの値を変更するにはどうすればよいですか?

+3

名前 'f(b = 30)'または 'f(c = 20)'を指定するだけです。 –

答えて

1

あなたが代わりに位置の名前で変数を割り当てることができます。

f(b=1, c=2) 
f(0, c=2) # sets a=0 and c=2 

別の方法としては、キーワード引数を使用することができます。

kwargs = { 'b': 1, 'c': 2 } 
f(**kwargs) 
0

関数を呼び出すと、名前で引数を渡すことができます。

i = f(b=35,c=76) # sets b and c while doing nothing to a 
関連する問題