`

python的bind函数

阅读更多
# -*- coding:utf-8 -*-

class Functor(object):
    def __init__(self, func, index=0, *args, **kwargs):
        self._Func = func
        self._Index = index
        self._Args = args
        self._Kwargs = kwargs
        
    def __call__(self, *args, **kwargs):
        args = args[:self._Index] + self._Args + args[self._Index:]
        kwargs = kwargs.copy()
        kwargs.update(self._Kwargs)
        return self._Func(*args, **kwargs)
        
        
def bind(func, index=0, *args, **kwargs):
    return Functor(func, index, *args, **kwargs)

 

 
 
 

文章来源:http://www.itnose.net/detail/6051780.html
更多文章:http://www.itnose.net/type/64.html

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics