码迷,mamicode.com
首页 > 其他好文 > 详细

装饰器

时间:2018-07-22 17:13:33      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:函数   star   方式   实现   不能   变量   知识   功能   *args   

‘‘‘
#装饰器:本质是函数,(装置其他函数),就是为其他函数添加附加功能。
#原则1.不能修改被装饰的函数的源代码
2.不能修改被装饰函数的调用方式
#实现装饰器的知识储备:1.函数即‘变量’;2.高阶函数;3.嵌套函数
#高阶函数+嵌套函数=装饰器
#高阶函数:a:把一个函数名当做实参传给另外一个函数(在不修改被装饰函数源代码的情况下为期天健功能);
b:返回值中包含函数名(不修改函数的调用方式)
‘‘‘

import time
def timmer(func):
def warpper(*args,**kwargs):
start_time=time.time()
func()
stop_time=time.time()
print(‘the func run time is %s‘%(stop_time-start_time))
return warpper
@timmer
def test1():
time.sleep(3)
print(‘in the test1‘)

test1()

装饰器

标签:函数   star   方式   实现   不能   变量   知识   功能   *args   

原文地址:https://www.cnblogs.com/wangchu/p/9350162.html

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