zoukankan      html  css  js  c++  java
  • python decorator模式


    from time import time class P:   @staticmethod def timing(func): # 这里的func 代指真正调用的函数对象, def _decorator(obj): #obj 代指 上述函数对象携带的参数,其实代指 原函数中的self实例 print obj # 查看调用对象示例 print("begin download %s of region: %s" % (obj.name, obj.region)) # 给出提示信息 time0 = time()  # 开始计时 func(self)  #真正执行 print("finish download %s of region: %s. Time cost : %.2f" % (obj.name, obj.region, (time() - time0))) return _decorator
    class Son(P): @P.timing def download(self): ...... s = Son() s.download() #会计时的  

    程序实现简单的为方法计时的 decorator 方式,并且是类对象内部的实现。在网上通常看到的是方法外面的实现。

    参考 http://www.wklken.me/posts/2012/10/27/python-base-decorator.html#nei-zhi-zhuang-shi-qi

        http://www.cnblogs.com/Jerry-Chou/archive/2012/05/23/python-decorator-explain.html

  • 相关阅读:
    解决svn Authorization failed错误
    jQuery切换事件
    jQuery学习笔记
    EAS开发
    JavaScript第二课
    JavaScript学习第一课
    EAS常用工具类
    [转]OpenBLAS项目与矩阵乘法优化
    [转]mmap和madvise的使用
    [转]C++赋值运算符重载函数(operator=)
  • 原文地址:https://www.cnblogs.com/dasheng-maritime/p/7508832.html
Copyright © 2011-2022 走看看