Python中的装饰器
装饰器的本质:闭包函数
功能:在不改变原函数源代码以及调用方式的情况下,在这个函数的前后加上扩展功能
设计模式/原则:开放封闭原则
对扩展是开放的,对修改是封闭的
import time def outer(func): def inner(*args,**kwargs): start_time = time.time() #原函数调用之前的扩展代码 ret = func(*args,**kwargs) #返回原函数执行结果 #原函数调用 stop_time = time.time() #原函数调用之后的扩展代码 print(stop_time - start_time) return ret #返回原函数执行结果 return inner @outer #hahaha=outer(hahaha) def hahaha(*args,**kwargs): time.sleep(0.01) hahaha(1,2)