首页 > 其他 > 详细

装饰器

时间:2018-04-30 10:57:37      阅读:134      评论:0      收藏:0      [点我收藏+]

装饰器:本质还是一个函数(装饰其他函数),为了替其他函数添加附加功能

原则:1、不修改被装饰函数的源代码。2、不修改被装饰函数的调用方式

实现装饰器必要条件:

一、函数即‘变量’

二、高阶函数

三、嵌套函数

计算一个函数运行时间:

import time
def timer(func): #timer(aa) func=aa 高阶函数
def deco(*args,**kwargs): # 内嵌函数
start_time=time.time()
func(*args,**kwargs)
stop_time=time.time()
print(‘run time:%s‘%(stop_time-start_time))
return deco
@timer #aa=timer(aa)
def aa():
time.sleep(3)
print(‘i am aa!‘)
@timer
def bb(name):
time.sleep(1)
print(‘i am ‘,name)

aa()
bb(‘zhow‘)

装饰器

原文:https://www.cnblogs.com/zhowhen/p/8972910.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!