python 函数--装饰器

一、装饰器

1、为什么要用装饰器?

  装饰器的功能:在不修改原函数以及调用方式的情况下对原函数功能进行扩展。

二、开放和封闭原则

1、对扩展是开放的

2、对修改是封闭的

三、装饰器的固有结构

 1 import time
 2 def warpper(func):
 3     def inner(*args,**kwargs):
 4         '''函数执行之前的内容扩展'''
 5         start = time.time()
 6         print('1')
 7         ret = func(*args, **kwargs)
 8         '''函数执行之后的内容扩展'''
 9         end = time.time()
10         print('2')
11         print(end - start)#睡眠时间
12         return ret
13     return inner
14 
15 @warpper
16 def aaa():
17     time.sleep(3)
18     print('123456')
19 
20 aaa()
21 
22 
23 输出:
24 1
25 123456
26 2
27 3.0

四、带参数的装饰器

五、多个装饰器装饰一个函数

猜你喜欢

转载自www.cnblogs.com/liubiaos/p/9284940.html