args功能正常

时间:2017-01-04 11:41:01

标签: python function wrapper

我的代码是这样的:

class XQ(object):
def _XP(x, rettype='string'):
    @staticmethod
    def wrapper(*args, **kwargs):
        print "args: ", str(args)
        print "x: ", x
    return wrapper

something = _XP('adios')

我做了:

j = XQ()
j.something(5)

,输出为:

args:  (5,)
x:  adios

当_XP只有两个参数时,我不明白args如何在包装函数中获得该值。我理解使用* args和* kargs(我认为),但我不知道我是如何收到内部函数的。

那5不是'x',也不是'rettype'而且我不知道它是如何到达其他函数的

有人可以解释一下吗?

0 个答案:

没有答案