python学习:装饰器

 1 #!/usr/bin/env python
 2 #coding:utf-8
 3 
 4 
 5 #装饰器本质就是函数,装饰其他函数
 6 #为其他函数添加附加功能
 7 #原则1:不能修改被装饰函数的源代码
 8 #原则2:不能修改被装饰函数的调用方式
 9 
10 import  time
11 
12 def timer(func):
13       def wapper(*args,**kwargs):
14            time1=time.time()
15            func(*args,**kwargs)
16            time2=time.time()
17            print('this function run {times}'.format(times=time2-time1))
18       return wapper
19 
20 @timer
21 def  test1():
22      time.sleep(3)
23      print('this function run 3 scend!')
24 
25 
26 test1()

 

posted @ 2017-02-15 12:26  alston-lee  阅读(97)  评论(0编辑  收藏  举报