python学习--装饰器计算函数运行时间


import time
import datetime

def calculate_function_run_time(func):
    """
    Calculate the running time of the function
    :param func: the function need to been calculated
    :return:
    """
    def call_fun(*args, **kwargs):
        start_time = time.time()
        f = func(*args, **kwargs)
        end_time = time.time()
        print('%s() run time:%s s' % (func.__name__, int(end_time - start_time)))
        return f
    return call_fun

def calculate_function_run_time_ms(func):
    def call_fun(*args, **kwargs):
        start_time = time.time()
        f = func(*args, **kwargs)
        end_time = time.time()
        print('%s() run time:%s ms' % (func.__name__, int(1000*(end_time - start_time))))
        return f
    return call_fun

@calculate_function_run_time
def test1():
    for i in range(1000000):
        i = i +1

@calculate_function_run_time_ms
def test2():
    for i in range(100000000):
        i = i +1

if __name__ == "__main__":
    test1()
    test2()
    
    
"""
	输出结果:
	test1() run time:5 s
	test2() run time:53 ms
"""


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM