用法:
@functools.wraps(wrapped, assigned=WRAPPER_ASSIGNMENTS, updated=WRAPPER_UPDATES)
这是一个方便的函数,用于在定义包装函数时调用
update_wrapper()
partial(update_wrapper, wrapped=wrapped, assigned=assigned, updated=updated)
。例如:>>> from functools import wraps >>> def my_decorator(f): ... @wraps(f) ... def wrapper(*args, **kwds): ... print('Calling decorated function') ... return f(*args, **kwds) ... return wrapper ... >>> @my_decorator ... def example(): ... """Docstring""" ... print('Called example function') ... >>> example() Calling decorated function Called example function >>> example.__name__ 'example' >>> example.__doc__ 'Docstring'
如果不使用此装饰器工厂,示例函数的名称将是
'wrapper'
,原始example()
的文档字符串将丢失。
相关用法
- Python functools.wraps()用法及代码示例
- Python functools.singledispatchmethod用法及代码示例
- Python functools.singledispatch用法及代码示例
- Python functools.partial用法及代码示例
- Python functools.partialmethod用法及代码示例
- Python functools.cache用法及代码示例
- Python functools.lru_cache用法及代码示例
- Python functools.reduce用法及代码示例
- Python functools.cached_property用法及代码示例
- Python functools.total_ordering用法及代码示例
- Python NumPy full方法用法及代码示例
- Python NumPy full_like方法用法及代码示例
- Python NumPy fliplr方法用法及代码示例
- Python dict fromkeys()用法及代码示例
- Python frexp()用法及代码示例
- Python BeautifulSoup find_next方法用法及代码示例
- Python NumPy floor方法用法及代码示例
- Python float转exponential用法及代码示例
- Python calendar firstweekday()用法及代码示例
- Python NumPy flatten方法用法及代码示例
- Python float.is_integer用法及代码示例
- Python Django format_lazy用法及代码示例
- Python format()用法及代码示例
- Python NumPy fill_diagonal方法用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 functools.wraps。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。