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

python 装饰器

时间:2019-06-12 23:16:24      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:log   相互   def   __name__   main   time()   UNC   pytho   装饰器   

‘‘‘

装饰器,从实际运行效果来看,就是 相互独立的函数,在不改变彼此的情况下,实现 功能 叠加,从而能力增强 。

模块间能够彼此赋能,不再是简单的相互合作/协作关系,更进了一步。挺灵活、又强悍。

下面的例子显示:@timer  装饰say()时,效果就是  timer函数+say函数 ,功能叠加在一起执行。

‘‘‘
import time
import nnlog

def timer(func):
  def newFunc():
    log = nnlog.Logger(‘zylog.txt‘)
    st = time.time()
    func()
    runTime = time.time()-st
    print(‘%s 的运行时间是 %s‘%(func.__name__,runTime))
    log.debug(‘%s 的运行时间是 %s‘%(func.__name__,runTime))

  return newFunc



@timer      

‘‘‘   装饰器,装饰时,效果就是  timer函数+say函数 ,功能叠加在一起执行   ‘‘‘
def say():
  time.sleep(2)
  print(‘say 函数!!!‘)



if __name__ == ‘__main__‘:
  say()

python 装饰器

标签:log   相互   def   __name__   main   time()   UNC   pytho   装饰器   

原文地址:https://www.cnblogs.com/xuexizongjie/p/11013250.html

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