python装饰器的wraps作用
Posted 扫驴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python装饰器的wraps作用相关的知识,希望对你有一定的参考价值。
不加:
from functools import wraps def my_decorator(func): def wper(*args, **kwargs): ‘‘‘decorator‘‘‘ print(‘Calling decorated function...‘) return func(*args, **kwargs) return wper @my_decorator def example(): """Docstring""" print(‘Called example function‘) print(example.__name__, example.__doc__)#wper decorator
加:
from functools import wraps def my_decorator(func): @wraps(func) def wper(*args, **kwargs): ‘‘‘decorator‘‘‘ print(‘Calling decorated function...‘) return func(*args, **kwargs) return wper @my_decorator def example(): """Docstring""" print(‘Called example function‘) print(example.__name__, example.__doc__)#example Docstring
装饰器修复技术
以上是关于python装饰器的wraps作用的主要内容,如果未能解决你的问题,请参考以下文章
解决使用@wraps装饰器,但是仍然未消除装饰器产生的副作用问题