执行时间模块(需补充)

import time  #导入了Python标准库中的time模块,用于处理时间相关的功能。
def cal_time(fn):   #定义了一个装饰器函数,并接受一个函数fn作为参数
    def inner():  #在cal_time函数内部定义了一个内部函数inner,用于包裹传入的函数fn。
        t1=time.perf_counter()  #记录函数开始执行时的时间。
        fn()  #执行传入的函数fn,即sum()或sum1()
        t2=time.perf_counter()  #记录函数执行结束时的时间。
        print(t2-t1)
    return inner  #返回内部函数inner,用于装饰被修饰的函数。
@cal_time  #使用cal_time装饰器修饰下面的sum()函数
def sum():  
    s=0
    for i in range(100000):
        s=s+i
@cal_time  #使用cal_time装饰器修饰sum1()函数,同样用于计算执行时间。
def sum1():
    s=0
    for i in range(100000):
        s=s+i
    print(s)
sum()
sum1()  #调用sum和sum1函数

注意:

1.装饰器传入的参数是函数

2.`@cal_time`是装饰器语法,用于简化在函数定义前应用装饰器的过程。当你在一个函数定义前加上`@cal_time`,相当于将该函数作为参数传递给`cal_time`函数,并将其返回的函数替换原来的函数定义。这使得在函数定义后直接调用函数时,实际上是调用了被装饰后的函数

3.注意@cal_time应写在被装饰函数的前面,即定义函数时前要加上@cal_time

4.注意函数无论是定义还是调用都需要在后面加上一个(),如time.perf_counter()

5.一般不用考虑python中的数据溢出问题

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值