1.定義乙個類描述數字時鐘
要求:給定乙個時間,例如15:50:00,則最終的效果為,如圖:
15:50
:0115:
50:0215:50
:0315:
50:0415:50
:0515:
50:0615:50
:0715:
50:0815:50
:0915:
50:1015:50
:1115:
50:1215:50
:1315:
50:1415:50
:1515:
50:1615:50
:1715:
50:1815:50
:1915:
50:2015:50
:21
既然是做乙個時鐘,我們首先能想到是引入時間模組。
import time
class
clock
(object):
defshow_time
(self)
: count=
0while count<20:
t = time.strftime(
"%h:%m:%s"
, time.localtime())
print
(t) time.sleep(1)
count+=
1if __name__ ==
"__main__"
: result=clock(
) result.show_time(
)
結果:
10:54
:5310:
54:5410:54
:5510:
54:5610:54
:5710:
54:5810:54
:5910:
55:0010:55
:0110:
55:0210:55
:0310:
55:0410:55
:0510:
55:0610:55
:0710:
55:0810:55
:0910:
55:1010:55
:1110:
55:12
顯然這樣不太對,這段**無法寫入時間,從而讓程式計算按照題意進行時間的計算。之後我考慮引入datetime模組,但是發現datetime模組必須帶年,月,日。也不能使用。所以我考慮用input來實現時間的輸入。
# 匯入時間模組
import time
class
clock
(object):
# 時間初始化
def__init__
(self, h, m, s)
: self.hour = h
self.minute = m
self.second = s
# 走字
defrun
(self)
:# 秒+
self.second +=
1if self.second ==60:
self.second =
0 self.minute +=
1if self.minute ==60:
self.minute =
0 self.hour +=
1if self.hour ==24:
self.hour =
0# 顯示
defshow
(self)
:# 不足兩位的在數字前補0
print
("%02d:%02d:%02d"
%(self.hour,self.minute,self.second)
)def
clocktime()
: h =
int(
input
("請輸入小時"))
m =int(
input
("請輸入分鐘"))
s =int(
input
("請輸入秒鐘"))
clock = clock(h,m,s)
while
true
: clock.show(
) time.sleep(1)
clock.run(
)print
(clocktime(
))
結果:
15:50
:0015:
50:0115:50
:0215:
50:0315:50
:0415:
50:0515:50
:0615:
50:0715:50
:0815:
50:0915:50
:1015:
50:1115:50
:1215:
50:1315:50
:1415:
50:1515:50
:1615:
50:1715:50
:1815:
50:1915:50
:2015:
50:21
2.定義管理員類:
管理員有屬性(name,password),
可以建立學校、建立課程、建立老師
class
school
(object):
# 初始化
def__int__
(self)
: self.name =
"admin"
self.pwd =
12345
# 管理學校
defcreateschool
(self,school)
: self.school = school
# 管理老師
defcreateteacher
(self,teacher)
: self.teacher = teacher
# 管理課程
defcreatecourse
(self,course)
: self.course = course
s = school(
)while
true
:# 設定選項
l=int(
input
("請選擇您要進行的操作:\n1.選擇學校\n2.選擇課程\n3.選擇老師\n4.退出\n"))
if l ==1:
s.createschool(
input
("請輸入要選擇的學校:\n"))
print
("您選擇了"
+s.school)
elif l ==2:
s.createcourse(
input
("請輸入要選擇的課程:\n"))
print
("您選擇了"
+s.course)
elif l ==3:
s.createteacher(
input
("請輸入要選擇的老師:\n"))
print
("您選擇了"
+s.teacher)
else
:break
結果:
請選擇您要進行的操作:
1.選擇學校
2.選擇課程
3.選擇老師
4.退出
1請輸入要選擇的學校:
扣丁學堂
您選擇了扣丁學堂
請選擇您要進行的操作:
1.選擇學校
2.選擇課程
3.選擇老師
4.退出
2請輸入要選擇的課程:
python
您選擇了python
請選擇您要進行的操作:
1.選擇學校
2.選擇課程
3.選擇老師
4.退出
3請輸入要選擇的老師:
摩登您選擇了摩登
請選擇您要進行的操作:
1.選擇學校
2.選擇課程
3.選擇老師
4.退出
4process finished with exit code 0
獲取斷面線的範圍
參考 1 獲取繪製要素的整體範圍 2 ienumelement penumelem 3 igraphicscontainer graphicscontainer pmap as igraphicscontainer 4 igraphicscontainerselect pgraphicscontai...
類,物件練習
1.建立乙個rectangle類,具有兩個資料成員width和length 以及乙個成員函式displayrectangle 1 為rectangle類建立無引數的 帶引數的建構函式 include using namespace std class rectangle rectangle int ...
物件導向練習
定義boat和car兩個類,兩者都有私有成員weight屬性,定義兩者的乙個友員函式totalweight 計算兩個類的物件的重量和。請根據給定的main函式和totalweight 函式的定義,完善boat和car兩個類。友元函式的使用 include using namespace std cl...