自己实现一个 partial 偏函数
Topic source我发现上面的 __call__
不支持覆盖参数,更新下:
def __call__(self, *args, **kwargs):
newkeywords = self.kwargs.copy()
newkeywords.update(kwargs)
return self.func(*self.args, *args, **newkeywords)
我看了你的回答觉得你的水平很高,我有个问题想请教,希望可以得到你的回复: 例子中: import functools max2=functools.partial(max,10) 这个偏函数解释是10自动加到了args的左边 因为参数的章节说的可变参数是可以任意数量的对吧,args是可变参数的话,那比如我想把10和20甚至更多的数作为默认参数放在max2中我该怎么是实现呢? 希望你可以回复我 谢谢
#@ 梦里昭华
#import functools
#def max2(*n):
return functools.partial(max,*n)
#d=max2(1,2,3,4,5)#自己任意写多少个默认参数个数
#d(10,13,20)#实现偏函数的调用
- 1
没烧开的汽水
使用: