为什么默认参数会更改?

时间:2020-11-11 08:04:51

标签: python-3.x function

为什么在这种情况下更改默认参数,即使我尝试更改默认参数也不总是总是一样

def myfunc(x,y,z="bye"):
    print("hey :" ,x)
    print("hey :" ,y)
    print("hey :" ,z)
myfunc("meet","bye","yo")

默认参数更改

1 个答案:

答案 0 :(得分:1)

如果在调用函数时显式指定默认值,则会覆盖默认参数。仅当您调用该函数而不传递包含默认值的变量时,该参数才适用。

看看这个例子:

>>> def myfunc(x,y,z="bye"):
...     print("hey :" ,x)
...     print("hey :" ,y)
...     print("hey :" ,z)
...
>>> myfunc("meet","bye","yo")
hey : meet
hey : bye
hey : yo
>>> myfunc("meet","bye")
hey : meet
hey : bye
hey : bye