python3写个时钟(铭记时间的重要性)
是不是一天又一天,都不知道干啥? 是不是觉得自己浑浑噩噩啊!是不是自从高考以后,再也没有争分夺秒的学习过?下面这个时钟将让你时刻牢记时间;、
看图:
看代码:
1 import tkinter as tk 2 import time 3 '''秒表部件''' 4 class StopWatch: 5 def __init__(self,se): 6 self.se=se 7 self.run=False 8 def update(self): 9 self.se=time.time()-self.start 10 self.setTime(self.se) 11 self.timer=root.after(50,self.update) 12 def setTime(self,tm): 13 minutes=int(tm/60) 14 seconds=int(tm-minutes*60.0) 15 hseconds=int((tm-minutes*60.0-seconds)*100) 16 self.var.set('%.2d:%.2d:%.2d'%(minutes,seconds,hseconds)) 17 def Start(self): 18 if not self.run: 19 self.start=time.time()-self.se 20 self.update() 21 self.run=True 22 def Stop(self): 23 if self.run: 24 root.after_cancel(self.timer) 25 self.se=time.time()-self.start 26 self.setTime(self.se) 27 self.run=False 28 def Reset(self): 29 if not self.run: 30 self.se=0 31 self.setTime(self.se) 32 def stopwatch(self): 33 win=tk.Toplevel() 34 win.geometry('192x100') 35 win.title('秒表') 36 self.var=tk.StringVar() 37 l=tk.Label(win,textvariable=self.var,font=('',35)) 38 l.pack(expand=1) 39 self.setTime(self.se) 40 panel2=tk.Frame(win) 41 panel2.pack(expand=1) 42 tk.Button(panel2,text='开始计时',command=self.Start).pack(side='left') 43 tk.Button(panel2,text='停止计时',command=self.Stop).pack(side='left') 44 tk.Button(panel2,text='复位',command=self.Reset).pack(side='left') 45 st.config(text='计次') 46 '''秒表部件''' 47 '''时钟部件''' 48 def settime(): 49 #星期 50 wd=int(time.strftime('%w')) 51 b={1:'星期一',2:'星期二',3:'星期三',4:'星期四',5:'星期五',6:'星期六',0:'星期日'} 52 d=b[wd] 53 #日期和时间 54 today1=time.strftime('%Y年%m月%d日')+d 55 time1=time.strftime('%H:%M:%S') 56 var1.set(today1) 57 var2.set(time1) 58 root.after(1000,settime) 59 '''时钟部件''' 60 '''程序入口''' 61 root=tk.Tk() 62 root.title('珍惜时间') 63 var1=tk.StringVar() 64 var2=tk.StringVar() 65 l2=tk.Label(root,textvariable=var2,font=('Arial',45)) 66 l1=tk.Label(root,textvariable=var1,font=('',20)) 67 l1.pack(expand=1) 68 l2.pack(expand=1) 69 settime() 70 panel1=tk.Frame(root) 71 panel1.pack(expand=1) 72 sw=StopWatch(0) 73 st=tk.Button(panel1,text='秒表',command=sw.stopwatch) 74 st.pack() 75 root.mainloop() 76 '''程序入口'''