下面的程序示例了python装饰器的使用:
def outer(fun):
print fun
def wrapper(arg):
result=fun(arg)
print 'over!'
return result
return wrapper
@outer
def func1(arg):
print 'func1',arg
return 'very good!'
response=func1('python')
print response
print func1
运行结果:
<function func1 at 0x02A67D70>
func1 python
over!
very good!
<function wrapper at 0x02A67CF0>
可以将上述程序的每一行都加上断点,在Debug模式下一步一步的运行,查看程序的具体运行轨迹。。。