1. 程式人生 > 實用技巧 >剛上班的朋友老是想著還有多久下班,用程式碼寫個計算下班時間指令碼

剛上班的朋友老是想著還有多久下班,用程式碼寫個計算下班時間指令碼

朋友剛畢業,每天從出門就開始等著下班,每天16:30準點下班,上班的時候老是跟我聊還有多久下班,我想著我是做Python的。

眾所周知,Python除了生孩子,其他什麼都能做,既然這麼喜歡問還有多久下班,那我就用Python寫個計算下班時間的軟體吧!

用小時還不行,要換算成分鐘,實在是太考驗腦子了。只好用python整個倒計時,讓電腦來幹活吧!另外朋友還容易忘了打卡,上次忘了打卡,快到家了又打車回去打卡了!就再加上打卡提醒吧!

上班的心情和上墳差不多,每天上班就開始盼著下班!
打工人打工魂,QTMD人上人!


主要利用了datetime庫,然後用easygui弄個介面。
程式碼如下:

from easygui import buttonbox,msgbox    #匯入easygui中的buttonbox,msgbox
import datetime    #匯入datetime
from random import choice    #從random匯入choice
 
 
 
def bs():    #定義一個報時函式
        end = datetime.datetime.strptime('16:30:0', '%H:%M:%S')    #下班時間
        now = datetime.datetime.today()    #現在時間
        delta = end - now # 用delta儲存兩個時間的時間差   下班時間-現在時間
 
        hour = int(delta.seconds/60/60)    #小時數,秒/60/60
        minute = int((delta.seconds-hour *60*60)/60)    #分鐘數,總-60*60*小時/60
        second = int(delta.seconds-hour *60*60 -minute*60)    #秒數
 
        hour_str = '距離下班還有:' + str(hour) +'小時'+ str(minute) +'分'+ str(second) +'秒'
        minute_str = '距離下班還有:' + str(minute+60*hour) +'分'+ str(second) +'秒'
        second_str = '距離下班還有:' + str(second+minute*60+60*hour*60) +'秒'
 
        return hour_str,minute_str,second_str    #返回小時,分鐘,秒
 
 
 
coms = ['中國人的喜酒,今世緣為您報時:',
        '中國高階中度白酒,國源為您報時:',
        '茅臺王子酒,為您報時:',
        '迎駕貢酒,為您報時:',
        '藍色經典,夢之藍為您報時:',
        '茅臺集團,習酒為您報時:',
        '成功汽車,為您報時:',
        '郎酒紅花郎,為您報時:',
        '郎牌特曲,為您報時:',
        '茅臺集團,為您報時:']    #報時公司列表
 
 
time_str = bs()
 
hour_str = time_str[0]   #第0個,小時
minute_str = time_str[1]    #第1個,分鐘
second_str = time_str[2]    #第2個,秒
 
 
com = choice(coms)    #隨機從列表中選擇一個報時公司
cs = buttonbox(msg=com + '\n' +hour_str+ '\n'+ minute_str + '\n'+second_str, title="第1次為您報時",choices=("知道啦,退下吧!","再次報時!"))
#用buttonbox來進行選擇
 
if cs == "知道啦,退下吧!":    #如果知道了就結束
        pass
num = 2    #第2次
while cs == "再次報時!":
        time_str = bs()
        hour_str = time_str[0]
        minute_str = time_str[1]
        second_str = time_str[2]
        cs = buttonbox(msg=com + '\n' + hour_str + '\n' + minute_str + '\n' + second_str, title="第"+str(num)+"次為您報時",choices=("知道啦,退下吧!", "再次報時!"))
        num += 1   #+1
 
 
 
end = datetime.datetime.strptime('16:30:0', '%H:%M:%S')
now = datetime.datetime.today()
 
while now == end:
    msgbox("千萬別忘了打卡!", title="重要提醒",ok_button="知道啦")    #提醒打卡!

  

然後打包做成exe啟動檔案發給朋友,讓我們來看看效果!

這是現在的時間

有三個顯示目錄,分別是小時,分鐘,秒

再次報時

檔案原始碼都在我自己的群裡面
在這裡還是要推薦下我自己建的Python開發學習群:1156465813,群裡都是學Python開發的,如果你正在學習Python ,歡迎你加入,大家都是軟體開發黨,不定期分享乾貨(只有Python軟體開發相關的),包括我自己整理的一份2020最新的Python進階資料和高階開發教程,歡迎進階中和進想深入Python的小夥伴!