python定义一个装饰器自动测量函数的运行时间

#!/usr/bin/python
# -*-coding:UTF-8-*-

import time
from functools import wraps


def timefn(fn):
    @wraps(fn)
    def measure_time(*args, **kwargs):
        start_time = time.time()
        result = fn(*args, **kwargs)
        end_time = time.time()
        print ("@timefn: %s took %s seconds" % (fn.func_name, str(end_time - start_time)))
        return result

    return measure_time


@timefn
def test_time(num):
    time.sleep(1)
    return num + 5


if __name__ == '__main__':
    print(test_time(2))

发布了145 篇原创文章 · 获赞 112 · 访问量 31万+

猜你喜欢

转载自blog.csdn.net/ternence_hsu/article/details/105319644