|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import time as t
class MyTimer():
def __init__(self):
self.uint=['年','月','日','时','分','秒']
self.carry=[0,12,31,24,60,60]#carry 进位的意思
self.prompt='计时未开始'
self.lasted=[]
self.begin=0
self.end=0
def __str__(self):#
return self.prompt
__repr__=__str__
def __add__(self,other):
gg='Total runing:'
result=[]
for index in range(6):
result.append(self.lasted[index]+other.lasted[index])
for i in range(1,6):#我在这里做了加法进位的条件
if result[i]>=self.carry[i]:
result[i]=result[i]-self.carry[i]
result[i-1]=result[i-1]+1
for index in range(6):
if result[index]:
gg+=(str(result[index])+self.uint[index])
return gg
def start(self):
self.begin=t.localtime()
self.prompt='提示:请先调用stop()停止计时'
print('Timing start:')
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):
temp=self.end[index]-self.begin[index]
if temp<0:#此刻必须向高位借位
i=1
while self.lasted[index-i]<1:#借是可以借但是不清楚高位的情况
self.lasted[index-i]+=self.carry[index-i]-1
self.laseted[index-i-1]-=1
i+=1
self.lasted.append(self.carry[index]+temp)#补位
self.lasted[index-1]-=1#刚才一不小心就被借了
else:
self.lasted.append(temp)
for index in range(6):
if self.lasted[index]:
self.prompt+=(str(self.lasted[index])+self.uint[index])
self.begin=0
self.end=0
上述代码 在于改进甲鱼的 t1+t2方面进制转化的问题 仅供参考 |
|