如何在更改其他默认函数参数时不更改第一个默认函数参数



如果我定义一个函数有2个或更多的默认参数,我怎么能在调用它时只改变第二个或第三个(等)一个?如:

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

如果我想保持a的原始值,我如何改变b或c的值?

您可以通过名称而不是位置来分配变量:

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

或者你可以使用关键字参数:

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

您可以调用函数并通过名称传递参数:

i = f(b=35,c=76)  # sets b and c while doing nothing to a

最新更新