Discuss / Python / 装饰器

装饰器

Topic source

import time

def metric(fn):

       def wrapper(*args,**kwargs):

            stat_time=time.time()   #函数开始运行的时间

            fn_tmp=fn(*args,**kwargs)

            end_time=time.time()     #函数结束运行的时间

            print('%s executed in %s ms' % (fn.__name__,end_time-stat_time))

            return fn_tmp

       return wrapper

@metric
def fast(x, y):

    time.sleep(0.0012)

    return x + y;

@metric

def slow(x, y, z):

    time.sleep(0.1234)

    return x * y * z;

fast(11,22)

slow(11,22,33)


  • 1

Reply