首页 > 代码库 > python_装饰器

python_装饰器

装饰器的语法结构:

使用关键字 @。

 

#高阶函数 加上闭包返回值:高阶函数就是不在原函数体上数据和调用结果,添加其他的功能def timmer(func):    def warpper():        start_time = time.time() #开始时间        res = func()   #这个的函数是调用的test()        stop_time = time.time() #结束时间        print(‘查看我运行的时间是:%s‘ %(stop_time-start_time))        return res    return warpper@timmer   #就等于是test=timmer(test) 不会改变test源代码def test():    time.sleep(2)    print(‘我是test‘)    # print(‘我叫【%s】,我今年【%s】,我是【%s】‘%(name,age,sex)    return "这是test的返回值"# res = timmer(test)# resres = test()print(res) #这个打印是打印的(return "这是test的返回值")

 

#####装饰器语法详解import time‘‘‘@timmer   #index = timmer(index)  index = timmer(index)index()就等于---->返回的结果就是warper(),所以运行的就是warper()里面的代码。‘‘‘def timmer(x):    def warper():        start_time = time.time()        x()        stop_time = time.time()        print(‘运行的时间:%d‘%(stop_time - start_time))    return warper@timmer   #index = timmer(index)def index():    time.sleep(4)    print(‘from the index‘)index()

  

 

python_装饰器