记录学习中遇到的问题

问题记录

在Python中编写一个定时器类,用该类可以来测量某一段代码的执行耗时:

with Timer(prefix=‘执行完成’) as ts1:
taskfunction():

代码如下

import time
class Times:
    # 在函数开始运行时传入相关值和重置时间
    def __init__(self,prefix):
        self.prefix = prefix
        self.start_time = None
    # 当with语句运行时执行 __enter__ 记录当前时间
    def __enter__(self):
        self.start_time = time.time()
        # 返回self实例对象便于使用
        return self
    # 在with结束时获取运行时间
    def __exit__(self, exc_type, exc_val, exc_tb):
        end_time = time.time()
        data_time = end_time-self.start_time
        print(f'{self.prefix}{data_time}')
        
# 运行实例如下
def taskfunctionA():
    time.sleep(3)
with Times(prefix='任务 A 完成') as ts1:
    taskfunctionA()

运行结果:

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值