一个函数有一个或多个参数预先就能用上,以便函数能用更少的参数进行调用。在使用partial函数前,要先导入functools模块。
一个函数可以有多个参数,在有些情况下有的参数可以先得到,而有的参数需要在后面的情景中才能知道,python提供了partial函数用于携带部分参数生产一个新函数。
partial函数定义了一个匿名函数,partial并不会带来程序运行效率的提高,只会使代码更简洁
import functools def add(a,b): return a+b #1 print('\n#1') rst1=add(4,2) print('add(4,2)=',rst1) plus3=functools.partial(add,3) #把参数3先传入函数add()中,形成一个新函数plus3() plus5=functools.partial(add,5) #2 print('\n#2') rest2=plus3(add(3,7)) #将函数计算结果作为参数传入 rest3=plus5(rst1) rest4=plus3(9) #把参数9传入plus3()中,因为第一个参数3已经先行传入,所以最后计算的结果是3+9=12 print(rest2) print(rest3) print(rest4)
运行结果:

浙公网安备 33010602011771号