python装饰器返回值_Python之装饰器

定义:装饰器本质上就是一个python函数,他可以让其他函数在不需要做任何代码变动的前提下,增加额外的功能,装饰器的返回值也是一个函数对象。

应用场景:比如插入日志、性能测试、事务处理、缓存、权限校验等场景。

一、装饰器的形成过程

1、自定义装饰器

#简单装饰器

import time

def timmer(f):

def inner():

start_time = time.time()

time.sleep(0.1)

f()

end_time = time.time()

print('----> 执行效率:%s' %(end_time - start_time))

return inner

#需要引用装饰器的函数

def func():

print('嘻嘻更健康')

#引用装饰器

func = timmer(func) #inner

func() #inner()

#输出结果

嘻嘻更健康

----> 执行效率:0.10022902488708496

2、装饰器的语法糖

#装饰的语法糖@

def timmer(f): #装饰器

def inner():

f()

return inner

@timmer #@timmer 相当于 func = timmer(func)

def func(): #要引用装器的函数

print('嘻嘻更健康')

你可能感兴趣的:(python装饰器返回值)