实现一个模块时间装饰器

"""实现一个测试函数运行耗时的时间装饰器"""
import time
import functools
def timmer(func):
    @functools.wraps(func)
    def inner(*args,**kwargs):
        # 进入函数前的操作
        start = time.time()
        res=func(*args, **kwargs)
        end = time.time()-start
        print(func.__name__ + " func time_cost -> {}".format(end))
        return res
    return inner

@timmer
def test_func(n):
    time.sleep(n)
    return

if __name__ == '__main__':
    test_func(21)

输出结果:

test_func func time_cost -> 21.000799894332886

 

你可能感兴趣的:(编程实战)