python元编程详解(2)

598 查看

如何对装饰器进行解包?

上一章,我们对函数进行装饰,但是有时候我们又想撤销这个函数的修饰,直接访问那个没有被修饰的函数,这时候我们就可以用到wrapped函数进行函数装饰器的解包,下面请看代码演示:

这时候我们的现有函数orig_add就会绕过@somedecorator函数的装饰器直接访问函数add。
一般这个解包的功能用在调试和自省(反射)中,方便开发人员进行开发。下一章