python計時器的程序的代碼和注釋
import time as t
#引入time模塊
class MyTimer():
def __init__(self):
#構造函數
self.unit = ['年','月','日','時','分','秒']
#設置時間單位
#設置一系列初始屬性
self.prmpt = "未開始計時"
self.lasted = []
self.begin = 0
self.end = 0
def __str__(self):
#魔術方法,當直接在外部調用print()時,執行此方法
return self.prmpt
__repr__ = __str__
#當外部生成對象后,如
#a = class_name()
#a
#操作后,執行此代碼
#開始計時
def start(self):
self.begin = t.localtime()
print('計時開始')
#停止計時
def stop(self):
if not self.begin:
print("提示,請先調用start()進行計時")
else:
self.end = t.localtime()
self._calc()
print('計時結束')
def __add__(self,other):
#此方法用來計算兩次計時結果的和
prmpt = "總共運行了"
result = []
for index in range(6):
result.append(self.lasted[index] + other.lasted[index])
#給result list添加數值
if result[index]:
prmpt += (str(result[index]) + self.unit[index])
return prmpt
#內部方法,計算運行時間
def _calc(self):
self.prmpt = "總共運行了"
for index in range(6):
self.lasted.append(self.end[index] - self.begin[index])
if self.lasted[index]:
self.prmpt += (str(self.lasted[index]) + self.unit[index])
#為下一輪計時初始化變量
self.begin = 0
self.end = 0