码迷,mamicode.com
首页 > 编程语言 > 详细

python装饰器(1)

时间:2017-09-02 16:56:44      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:统计   span   test   实参   高阶函数   nbsp   print   arp   知识   

装饰器本质是函数,用于装饰其他函数(就是为其他函数添加附加功能)
原则1:不能修改被装饰函数的源代码
原则2:不能修改被装饰函数的调用方式

##################################################
#实现装饰器知识储备:
#1.函数即“变量”
#2.高阶函数(把一个函数名当作实参传递给另一个函数(在不修改被装饰函数源代码的情况下为其添加功能)或 返回之中包含函数名(不修改函数的调用方式))
#3.嵌套函数
# 高阶函数+嵌套函数 ==> 实现装饰器效果
################################################################
以下代码中,timmer函数装饰test3函数,为test3函数添加统计运行时间功能
 1 __author__ = "csy"
 2 import time
 3 
 4 def timmer(func):
 5     def warpper(*args,**kwargs):
 6         start_time=time.time()
 7         func()
 8         stop_time=time.time()
 9         print(the func run time is %s %(stop_time-start_time))
10     return warpper
11 
12 @timmer
13 def test3():
14     time.sleep(3)
15     print(in test3)
16 
17 test3()

 

 


python装饰器(1)

标签:统计   span   test   实参   高阶函数   nbsp   print   arp   知识   

原文地址:http://www.cnblogs.com/csy113/p/7466883.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!