zoukankan      html  css  js  c++  java
  • Python 装饰器示例,计算函数或方法执行时间

    # 定义一个计算执行时间的函数作装饰器,传入参数为装饰的函数或方法
    def print_execute_time(func):
        from time import time
    
        # 定义嵌套函数,用来打印出装饰的函数的执行时间
        def wrapper(*args, **kwargs):
            # 定义开始时间和结束时间,将func夹在中间执行,取得其返回值
            start = time()
            func_return = func(*args, **kwargs)
            end = time()
            # 打印方法名称和其执行时间
            print(f'{func.__name__}() execute time: {end - start}s')
            # 返回func的返回值
            return func_return
    
        # 返回嵌套的函数
        return wrapper
    
    
    # 定义一个随机数求和的方法,传入参数是随机数的个数,加上刚才定义的装饰器
    @print_execute_time
    def cal_sum(size):
        from random import random
        li = [random() for i in range(size)]
        return sum(li)
    
    
    if __name__ == '__main__':
        # 打印一下1000000个的和,同时会显示执行时间
        print(cal_sum(1000000))
    
    

    输出结果:

    cal_sum() execute time: 0.19301128387451172s
    500049.06074024545
    
  • 相关阅读:
    算法竞赛进阶指南--lowbit运算,找到二进制下所有是1的位
    linux
    conda配置安装pytorch
    anaconda的安装及使用
    python操作mysql
    python生成文字云
    决策树基本原理
    Ubuntu截图软件
    ubuntu安装teamviewer
    k-最近邻算法基本原理
  • 原文地址:https://www.cnblogs.com/milesma/p/12172982.html
Copyright © 2011-2022 走看看