|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import time as t
class MyTimer1:
def __init__(self):
self.prompt = '未开始计时'
self.lasted = 0
self.begin = 0
self.end = 0
self.default_timer = t.perf_counter
def __str__(self):
return self.prompt
__repr__ = __str__
def __add__(self,other):
result = self.lasted + other.lasted
prompt = '总共运行了 %0.2f 秒' % result
return prompt
# 开始计时
def start(self):
self.begin = self.default_timer()
self.prompt = '提示:请先调用stop()停止计时!'
print('计时开始')
# 停止计时
def stop(self):
if not self.begin:
print('提示:请先调用start()开始计时')
else:
self.end = self.default_timer()
self._calc()
print('计时结束!')
# 内部方法,计算运行时间
def _calc(self):
self.lasted = self.end - self.begin
self.prompt = '总共运行了 %0.2f 秒' % self.lasted
self.begin = 0
self.end = 0
# 设置计时器(time.perf_counter()或time.process_time())
def set_timer(self,timer):
if timer == 'process_time':
self.default_timer = t.process_time
elif timer == 'perf_counter':
self.default_timer = t.perf_counter
else:
print('输入无效,请输入perf_counter或process_time')
为啥设置process_time时候,时间总是0呢
处理你begin,到end代码cpu执行时间很短,几乎为0,因为不包括空余时间
|
-
|