Python functools模块学习总结
文档地址
functools.partial
作用:
functools.partial通过包装手法,允许我们"重新定义"函数签名
用一些默认参数包装一个可调用对象,返回结果是可调用对象,并且可以像原始对象一样对待
冻结部分函数位置函数或关键字参数,简化函数,更少更灵活的函数参数调用
#args/keywords调用partial时参数
defpartial(func,*args,**keywords):
defnewfunc(*fargs,**fkeywords):
newkeywords=keywords.copy()
newkeywords.update(fkeywords)
returnfunc(*(args+fargs),**newkeywords)#合并,调用原始函数,此时用了partial的参数
newfunc.func=func
newfunc.args=args
newfunc.keywords=keywords
returnnewfunc
声明:
urlunquote=functools.partial(urlunquote,encoding='latin1')
当调用urlunquote(args,*kargs)
相当于urlunquote(args,*kargs,encoding='latin1')
E.g:
importfunctools
defadd(a,b): returna+b
add(4,2) 6
plus3=functools.partial(add,3) plus5=functools.partial(add,5)
plus3(4) 7 plus3(7) 10
plus5(10) 15
热门推荐
10 五一公司放假祝福语简短
11 追星女孩的祝福语简短
12 给长辈端午祝福语 简短
13 生日祝福语有诗意简短
14 团圆日祝福语简短
15 中秋商务祝福语简短最新
16 温暖文艺简短祝福语短句
17 男孩上学祝福语简短的
18 入住酒店文案祝福语简短