Size: 637
Comment:
|
← Revision 6 as of 2009-12-25 07:16:17 ⇥
Size: 610
Comment: converted to 1.6 markup
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
参考[[WeiZhong/DecoratorsInPython24]] |
|
Line 3: | Line 6: |
#参考http://python.cn/pipermail/python-chinese/2006-January/021034.html | |
Line 13: | Line 15: |
Line 17: | Line 19: |
Line 20: | Line 21: |
}}} 输出: |
|
Line 21: | Line 24: |
}}} 输出: |
{{{ |
Line 27: | Line 28: |
}}} |
参考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)