摘要: 默认参数指的是当函数调用中省略了实参时自动使用的一个值。使用默认参数极大地提高了使用函数的灵活性。对于一些函数,你可能想要一些参数是可选,即在用户不希望为它们提供值时使用默认值,这在默认的参数值的帮助下完成的。 你可以在函数定义中通过在参数名称后使用赋值操作符...
默认参数指的是当函数调用中省略了实参时自动使用的一个值。使用默认参数极大地提高了使用函数的灵活性。对于一些函数,你可能想要一些参数是可选,即在用户不希望为它们提供值时使用默认值,这在默认的参数值的帮助下完成的。
你可以在函数定义中通过在参数名称后使用赋值操作符(=)
后跟默认值来指定默认的参数值。
注意,默认参数值应该是一个常数。更准确的说,默认的参数值应该是不可变的。
函数默认参数举例:
def say(message, times = 1):
print(message * times)
say('你好')
say('世界', 5)
输出:
你好
世界世界世界世界世界
函数say
是用来按照指定的次数打印一个字符串。如果我们不提供一个值,那么在默认情况下字符串只打印一次。为此,我们为参数times
指定一个默认参数值1。
在第一次使用函数say时,我们只提供了字符串,它打印字符串一次。在第二次使用say
时,我们提供了字符串和一个实参5两个参数,说明我们想要say
字符串5次。
注意:只有在参数列表后面的的参数可以被赋予默认参数值,即在参数列表中,你不能在没有默认值的参数前有有默认参数值的参数。
这是因为,值按位置分配给参数。例如,def func(a, b=5)
是有效的,而def func(a=5, b)
是无效的。