定制一个计时器的类,start 和stop方法代表启动计时和停止计时,假设计时器对象t1, print(t1)和直接调用t均显示结果,当计时器未启动或已经停止计时,调用stop方法会给予温馨的提示。

C零基础入门学习python——小甲鱼
下面一起来做一个案例。
基本要求:
●定制一个计时器的类。
●start 和stop方法代表启动计时和停止计时。
●假设计时器对象t1, print(t1)和直接调用t均显示结果。
●当计时器未启动或已经停止计时,调用stop方法会给予温馨的提示。
●两个计时器对象可以相加: t1+t2。
只能使用提供的有限 资源完成。
程序实现如下:

import time as t
class MyTimer:
    def __init__(self):
        self.unit = ['年','月','天','小时','分钟','秒']
        self.prompt = "未开始计时"
        self.lasted = []
        self.begin = 0
        self.end = 0
    def start(self):
        self.begin = t.localtime()
        self.prompt = "提示:请先调用stop开始计时"
        print("计时开始......")
    def stop(self):
        if not self.begin:
            print("提示:请先调用start()开始计时")
        else:
            self.end = t.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

定制一个计时器的类,start 和stop方法代表启动计时和停止计时,假设计时器对象t1, print(t1)和直接调用t均显示结果,当计时器未启动或已经停止计时,调用stop方法会给予温馨的提示。_第1张图片

你可能感兴趣的:(定制一个计时器的类,start 和stop方法代表启动计时和停止计时,假设计时器对象t1, print(t1)和直接调用t均显示结果,当计时器未启动或已经停止计时,调用stop方法会给予温馨的提示。)