计时器

本文介绍了一个使用Python实现的自定义计时器类,该类可以用于测量代码段的执行时间。通过start()和stop()方法启动和停止计时,能够精确到年、月、日、小时、分钟和秒,并在停止计时后输出总的运行时间。
 1 import time as t
 2 
 3 class MyTimer():
 4     def __init__(self):
 5         self.unit = ['','','','小时','分钟','']
 6         self.prompt = '未开始计时'
 7         self.lasted = []
 8         self.begin = 0
 9         self.end = 0
10     def __str__(self):
11         return self.prompt
12     __repr__ = __str__
13     def __add__(self, other):
14         prompt = '总共运行了'
15         result = []
16         for index in range(6):
17             result.append(self.lasted[index] + other.lasted[index])
18             if result[index]:
19                 prompt += (str(result[index]) + self.unit[index])
20         return prompt
21     #开始计时
22     def start(self):
23         self.begin = t.localtime()
24         self.prompt = '提示:请先调用stop()停止计时'
25         print('计时开始。。。')
26     #停止计时
27     def stop(self):
28         if not self.begin:
29             print('提示:请先调用start()进行计时')
30         else:
31             self.end = t.localtime()
32             self._calc()
33             print('计时结束!')
34 
35     #内部方法,计算运行时间
36     def _calc(self):
37         self.lasted = []
38         self.prompt = '总共运行了'
39         for index in range(6):
40             self.lasted.append(self.end[index] - self.begin[index])
41             if self.lasted[index]:
42                 self.prompt += str(self.lasted[index]) + self.unit[index]
43         #为下一轮计时初始化变量
44         self.begin = 0
45         self.end = 0
46         #print(self.prompt)

 

转载于:https://www.cnblogs.com/vigossr/p/10234327.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值