#偏函数是从Python2.5引入的概念,通过functools模块被用户调用。注意这里的偏函数和数学意义上的偏函数不一样。
#偏函数是将所有承载的函数作为partial()函数的第一个参数,原函数的各个参数依次作为partial()函数的后续参数,除非使用关键字参数。
#下面通过示例来说明,在这个例子中,将实现一个取余函数,取得整数100对不同数m的100%m的余数。编写代码如下:
1 #! /usr/bin/python3 2 #-*-conding:UTF-8 -*- 3 #偏函数 4 5 from functools import partial 6 7 def mod(n,m): 8 return n%m 9 mod_by_100=partial(mod,100) 10 print('自定义函数,100对7取余结果为:',mod(100,7)) 11 print('调用偏函数,100对7取余结果为:',mod_by_100(7))
#执行结果为:
1 ===================== RESTART: C:/Users/L/Desktop/偏函数.py ===================== 2 自定义函数,100对7取余结果为: 2 3 调用偏函数,100对7取余结果为: 2
#由执行结果看到,使用偏函数所需代码量比自定义函数更少、更简洁。
#在介绍函数的参数时,我们讲到通过设定参数的默认值可以降低函数调用的难度。从上面的示例来看,偏函数也可以做到这一点。