import functools
def jian(x,y):
return x-y
j=functools.partial(jian,y=2)
print(j(5))
结果是3
简单总结functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值)
这里就是把y的值固定为了2,之后只需要输入x的值即可
另外,当你固定的参数不是最后一个的时候,在输入其他参数的时候需要加上参数名,比如
def mul(a, b, c):
return a * b * c
f = functools.partial(mul, b = 2)
#就需要像下面这样输入参数
n=f(1,c=3)
print(n)
结果为6
如果你固定的参数是a,那么你修改a,b,c都需要加上参数名,比如a=2这样才行
若你固定的参数是b,修改a的时候就不用加参数名,修改b和c都需要参数名