Python - 代码耗时统计

题目

  • 编写代码:编写装饰器函数,统计代码耗时情况

思路

  • 这题没有难度,直接编写一个装饰器函数,将要统计的函数作为装饰器函数的参数,在装饰器函数开始时记录一个时间,作为开始时间,然后开始执行要统计的函数,执行完成后,再记录一个时间作为结束时间,然后结束时间减去开始时间,就统计出来了要统计的函数的执行时间。

代码

import time

def exec_time(func):
    def wrapper(*args, **kwargs):                                               #定义装饰
        start_time = time.time()                                                #记录函数开始时间戳
        print("{fun}() start time:%s".format(fun = func.__name__) %start_time)  #打印开始的时间戳
        result = func(*args, **kwargs)                                          #装饰器内部调用原函数
        end_time = time.time()                                                  #记录函数结束时间戳
        print("{fun}() end time:%s".format(fun = func.__name__) %end_time)      #打印结束的时间戳
        print("{fun}() execution time:%5.2f".format(fun = func.__name__) %(end_time - start_time))#统计原函数执行时间
        return result                                                           #返回原函数执行结果
    return wrapper                                                              #返回装饰器函数引用

@exec_time                                                                      #装饰器配置
def timeFunc():
    sum = 0                                                                     #定义变量,初始值为0
    for i in range(999999):                                                     #遍历
        sum += i                                                                #计算和
    print("The sum is %s" %sum)                                                 #打印结果

if __name__ == "__main__":
    timeFunc()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值