partial()偏函数
partial是Python functools 模块中的一个高级函数。 它对普通函数进行封装, 主要功能是把一个函数的部分参数给固定住,返回一个新的函数。
通俗点说, 就是冻结
原函数的某些参数。
该函数形式如下:
functools.partial(func[,*args][, **kwargs])
其中func
是定义的函数。
示例一
初次用这个函数, 可能都会有一些疑问, 直接调原函数就好了, 为什么搞这么复杂?
举个简单的例子, 可能就更好理解了。例如, 你实现了一个乘法函数, 实现2个数相乘:
from functools import partial def mul(x, y): return x*y print(f'正常函数计算:\n{mul(2,3)}') mul2 = partial(mul,y=3) print(f'使用partial函数计算:\n{mul2(2)}')
计算结果如下:
示例二
from functools import partial def add(a,b,c,d): print(a + 2*b + 3*c + 4*d) print('-------use normal mehod-------') add(1,1,1,1)
print('-------use partial mehod-------') partial1 = partial(add,b=1,c=1,d=1) # 通过添加关键字标注确定的形参 partial1(1)
执行结果如下:
标签:partial,函数,python,中偏,-------,add,print,Partial,functools From: https://www.cnblogs.com/hhaostudy/p/17537235.html