十、python开发之装饰器

一、装饰器:(decorator)
介绍:1、本质是函数,为其他函数添加附加功能。
          2、不能修改被装饰的函数的源代码。
          3、不能修改被装饰的函数的调用方式。
 
定义:高阶函数+嵌套函数==>装饰器
 
二、定义一个函数并为其添加一个计时功能的装饰器
import time
def func1(func):
    def func2(*args):
        start_time = time.time()
        func(*args)
        stop_time = time.time()
        print("program run time %s" %(stop_time-start_time))
    return func2
@func1
def func(*args): 
    print(*args)
    time.sleep(5)
func(3,5,6,7,3)
 
三、装饰器语法:
被装饰函数的正上方,单独一行
@func1
@func2
def func(*args): 
    print(*args)
    time.sleep(5)
func(3,5,6,7,3)
 
posted @ 2018-05-03 17:02  caibaofei  阅读(76)  评论(0编辑  收藏  举报