用Python,实现一个装饰器配置文件,计算给定函数的执行时间

问题遇到的现象和发生背景

实现一个装饰器配置文件,它计算给定函数的执行时间,打印执行时间并返回函数结果。
考虑使用时间模块和default_timer函数来计算函数执行时间。将装饰器保存到一个utils.py文件中。

问题相关代码,请勿粘贴截图
Example
@profile
def some_function ():
return sum ( range ( 1000 ) )
result = some_function () # return a value and print execution ti

实现一个上下文管理器计时器来计算代码块执行时间,并将其打印到屏幕上。将上下文管理器保存到一个utils.py文件中。

Example
with timer ():
print ( sum ( range ( 1000 ) ) )
# print execution time when calculation is over

我的解答思路和尝试过的方法
我想要达到的结果

写一下注释

utils:


import datetime


def default_timer(func):
    def int_time(*args, **kwargs):
        start_time = datetime.datetime.now()  # 程序开始时间
        func()
        over_time = datetime.datetime.now()   # 程序结束时间
        total_time = (over_time-start_time).total_seconds()
        print('程序共计%s秒' % total_time)
    return int_time

测试函数

from utils import default_timer


@default_timer
def main():
    print('>>>>开始计算函数运行时间')
    for i in range(1, 100):# 可以是任意函数  , 这里故意模拟函数的运行时间
        for j in range(i):
            print(j)


if __name__ == '__main__':
    main()

img