日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

小甲鱼python课后题答案_Python 小甲鱼教程 课后练习44

發(fā)布時間:2024/9/19 python 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 小甲鱼python课后题答案_Python 小甲鱼教程 课后练习44 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

按照視頻內(nèi)的內(nèi)容,已經(jīng)寫出了一個計時器,但是小甲魚要求的內(nèi)容是,不能讓時間出現(xiàn)負值,所以需要修改計時器

自己寫的和小甲魚寫的完全不一樣…..小甲魚那個應該是先計算,再最后賦值并打印

自己這個是先不管他有沒有負值,把值先寫出來,再進行借位計算,如下。

import time as t

class mytimer():

def __str__(self):

return self.prompt #重寫__str__魔法方法,可以讓程序在調(diào)用print函數(shù)時候,打印當時狀態(tài)的prompt內(nèi)容

__repr__=__str__ #將__repr__和__str__相同化,這樣在解釋器里面直接敲實例的話,就可以調(diào)用語句了

def __add__(self,other):

sum=[]

self.prompt=’總共運行了: ‘

for key in range(6):

sum.append(self.lasted[key]+other.lasted[key])

if sum[key]:

self.prompt+= str(sum[key])+self.unit[key]

return self.prompt

def __init__(self):

self.unit=[‘年’,’月’,’日’,’小時’,’分鐘’,’秒’]

self.borrow=[0,12,31,24,60,60] #這一行及其重要,因為本來我是把借位計算分成5個if寫的,后來看到小甲魚這樣添加了列表,發(fā)現(xiàn)可以用for來迭代寫

self.begin=0

self.end=0

self.prompt=’還未開始計時’ #初始狀態(tài),如果在剛剛實例化還未開始的時候直接在解釋器輸入實例,那會提示你還未開始計時

def start(self):

self.begin=t.localtime() #計時開始

self.prompt=’請先調(diào)用stop()結(jié)束計時’ #如果在當前狀態(tài),使用解釋器輸入實例,他會提示你先結(jié)束

print (‘開始計時’)

def stop(self):

if not self.begin: #如果已經(jīng)開始計時,意思里就是self.begin里面是有內(nèi)容的話

print (‘請先調(diào)用start()開始計時’)

else:

self.end=t.localtime() #計時結(jié)束

self._cal() #調(diào)用內(nèi)部函數(shù)_cal

print (‘計時結(jié)束’)

def _cal(self):

self.lasted=[] #制作一個空列表,以存放每個單位上面相減的值

self.prompt=’總共運行了’

for i in range(6):

self.lasted.append(self.end[i]-self.begin[i]) #先向空列表生成數(shù)據(jù),不管正負值

print (self.lasted) #這一句只是我后期用于檢驗用的,可以刪除

for n in range(6): #第二次迭代,這里就是開始檢驗是否有數(shù)值為負了

if self.lasted[5-n]<0: #我們從最小單位描述開始檢查,如果小于0

self.lasted[5-n-1]=self.lasted[5-n-1]-1 #則前一位數(shù)字減1

self.lasted[5-n]=self.borrow[5-n]+self.lasted[5-n] #同時,這個單位的周期數(shù)字去加上目前這一位的數(shù)字

else:

pass

if self.lasted[n]: #如果計算后還是有內(nèi)容的:則加入prompt的語句

self.prompt+=str(self.lasted[n])+self.unit[n]

print (self.prompt)

self.begin=0 #重置計數(shù)器

self.end=0 #重置計數(shù)器

總結(jié)

以上是生活随笔為你收集整理的小甲鱼python课后题答案_Python 小甲鱼教程 课后练习44的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。