因为Python认为应该有一个 - 最好只有一个 - 显而易见的方法。我想知道是否有一种在Python中使用参数化函数的最佳方法。
我遇到了两种方法,使用闭包或functools.partial
,如下所示,
def par_fun1(x, y):
def par_fun_inner(p):
return (x + y + p) ** 2
return par_fun_inner
temp1 = par_fun1(2, 2)
temp1(1)
from functools import partial
def par_fun2(x, y, p):
return (x + y + p) ** 2
temp2 = partial(par_fun2, 2, 2)
temp2(1)
有人比另一个好吗?当然,如果有更好的方法来实现参数功能,请分享您的想法!