Size: 637
Comment:
|
Size: 604
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
参考WeiZhong/DecoratorsInPython24 |
|
Line 3: | Line 5: |
#参考http://python.cn/pipermail/python-chinese/2006-January/021034.html | |
Line 13: | Line 14: |
Line 17: | Line 18: |
Line 20: | Line 20: |
}}} 输出: |
|
Line 21: | Line 23: |
}}} 输出: |
{{{ |
Line 27: | Line 27: |
}}} |
参考WeiZhong/DecoratorsInPython24
#带参数修饰器函数被调用时必须返回一个新的修饰器函数 def decoratorArgs(x,y): def decorator(f): def func(*args,**keywordArgs): print 'invoke: %s(%s,%s)' % (f.__name__,x,y) result=f(*args,**keywordArgs) print 'invoked: %s(%s,%s)' % (f.__name__,x,y) return result return func return decorator @decoratorArgs(1,2) def hello(arg): print 'hello:',arg hello('abc') print
输出:
invoke: hello(1,2) hello: abc invoked: hello(1,2)