本帖最后由 jackz007 于 2022-10-24 17:20 编辑 import time
class MyTimer():
def __init__(self):
self.unit = ['年','月','天','小时','分钟','秒']
self.prompt = '未开始计时'
self.lasted = []
self.begin = 0
self.end = 0
def __str__(self):
return self.prompt
def __and__(self, other):
prompt="总共运行时间"
result =[]
for index in range(6):
result.append(self.lasted[index] + other.lasted[index])
if result[index]:
prompt += (str(result[index]) + self.unit[index])
return prompt
__repr__ = __str__
def start(self):
self.begin=time.localtime()
self.prompt =("提示:请先调用stop()停止计时!")
print("计时开始...")
def stop(self):
if not self.begin:
print("提示:请先调用start()开始计时!")
else:
self.end = time.localtime()
self._calc()
print("计时结束")
def _calc(self):
self.lasted = []
self.prompt = "总共运行了"
for index in range(6):
self.lasted.append(self.end[index] - self.begin[index])
if self.lasted[index]:
self.prompt += (str(self.lasted[index]) + self.unit[index])
self.begin = 0
self.end = 0
t1 = MyTimer()
t . start()
for _ in range(50000000):
pass
t . stop()
print(t1)
运行实况:D:\[00.Exerciese.2022]\Python>python x.py
计时开始...
计时结束
总共运行了8秒
D:\[00.Exerciese.2022]\Python>
|