Python学习笔记 : 偏函数

偏函数

首先简单说functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数,调用这个新函数会更简单

//我的理解,就好比c++中对某个带参数的函数进行二次封装,让他满足我的实际需求,调用更简洁

例子:

#假设对int(x, base = 10),进行二次封装
#通常做法
def to_int2(x):
    return  int(x, base = 2)
print(to_int2('101'))
#偏函数 做法
import functools
to_int2_partial = functools.partial(int, base = 2)
print(to_int2_partial('101',base=2))
#partial的函数声明
#def __init__(self, func, *args, **keywords):
#由此处可以看到其实就是做了
#int(**keywords)  ==>kw = {'base' = 2} 然而‘101’会以*args的形式传入到函数
print(to_int2_partial('101',base=10))
#result --> 101

 

posted @ 2016-05-13 23:00  jafo  阅读(107)  评论(0)    收藏  举报