有一个参数默认值的函数:
def g(y, z = "default"):
print y, z
我想从函数“f”调用这个函数,其中包括一个参数“z”,它应该是可选的,i。即“f”的用户应该能够在提供或不提供“z”值的情况下调用“f”。如果他在参数列表中没有传递“z”而调用“f”,则“f”应该调用“g”,以便最后使用“z”的默认值。用作默认值的值(在此示例中为“default”)应仅在代码中出现一次。
答案 0 :(得分:0)
使用**kwargs
:
def f(**kwargs):
g("fixed-y", **kwargs)
f() # prints "fixed-y default"
f(z='mushroom') # prints "fixed-y mushroom"
答案 1 :(得分:0)
听起来您的主要目标是确保"default"
仅在代码中出现一次。
def g(y, z = None):
if z is None:
z = "default"
print y, z
def f(y, z = None):
g(y, z)