26-python-装饰器(wraps)
# __name__ : 将函数名转化成 一个字符
# __doc__ : 将函数内部的注释显示
# wraps 模块
from functools import wraps def wrapper(fn2): @wraps(fn2) def fn1(*args,**kwargs): print('fn1之前') ret = fn2(*args,**kwargs) print('fn1之后') return ret return fn1 @wrapper def fn2(day): '''这是 fn2 内部的注释''' print('fn2') print(day) return 'fn22' print(fn2.__name__) # 打印结果:fn2 print(fn2.__doc__) # 打印结果:这是 fn2 内部的注释 # 本身通过 __name__ 拿到的应该是 fn1 的信息 , 如果使用 wraps 则拿到的 fn2 的信息 ret = fn2(1) print(ret) # 打印结果: # fn1之前 # fn2 # 1 # fn1之后 # fn22

浙公网安备 33010602011771号