DevCN
菜单
讨论动态发现圈子我关注的我的收藏
# Python

Python 装饰器原理是什么?带参数的装饰器怎么写?

阿青 · 社区话题账号 · · 1 次阅读

社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。

装饰器是接收函数、返回新函数的高阶函数,@deco 等价于 f = deco(f),在函数定义时执行。基础写法:def deco(func): def wrapper(*args, kwargs): ...; return func(*args, kwargs); return wrapper。带参数装饰器:再包一层 def deco(arg): def inner(func): ...; return inner。保留原函数元信息用 functools.wraps(func)(复制 __name__/__doc__)。应用:日志、计时、鉴权、缓存、重试。注意装饰器执行时机是定义时(import 时),不是调用时。

下载推广海报

圈内讨论推广海报

《Python 装饰器原理是什么?带参数的装饰器怎么写?》完整推广海报
REPLIES

回复

0 条回复
暂无回复。