• 装饰器decorator的使用
    • 在某公司的一次笔试中面试官出了一道题,使用python 的decorator实现一个函数的执行时间的计算。
    • 分析:关于函数执行时间的计算,那么肯定是执行之前得到一个时间,执行之后得到一个时间,中间直接执行一次函数,这样就得到一个函数的执行时间。考虑适用decorator,那么参数是func,并且使用函数的嵌套(闭包)
    • 示例代码:
    • import time
      def calFuncTime(func):
          def getTime():
              start = time.time() # time point
              func()
              end = time.time() # after exec func(), get current time
              return end-start # return the diff time
          return getTime
      
      @calFuncTime
      def getDis():
          i = 0
          while i<10000:
              i = i+1
      print getDis() # this will print getDis() func exec time
    • 关于decorator的介绍发现一篇写的不错的文章:https://foofish.net/python-decorator.html

参考链接:http://blog.csdn.net/levy_cui/article/details/52841079