对于像这样具有多个参数的函数:
def f(a, b, c):
return a + b + c
定义一个新函数很简单,如下所示:
def g(a, *args):
return f(a, *args)
这里,
a
是f()
的第一个参数。如果我想指定 f()
的第二个参数,即:,该怎么办?
def g(b, *args):
# return f(???)
您只是对上一个示例中的参数重新排序。您需要解压
*args
并将它们传递给 f
。
def g(b, *args):
a, c = args
return f(a, b, c)
您可以从
*args
中解压一些参数:
def f(a, b, c):
return a + b + c
def g(b, *args):
a,*rest = args
return f(a, b, *rest)
print(g(1,2,3))
输出:
6