欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用Python編寫一個鬧鐘,治好你的拖延癥

 更新時間:2022年05月14日 09:20:38   作者:顧木子吖  
起床真是令人困擾的事情,有的人根本不用定鬧鐘,但有的人提前半個小時鬧鐘都叫不醒。本文將分享利用Python編寫的鬧鐘腳本,希望能治好你的拖延癥

導語 

相信有不少人的鬧鐘是設成這樣的:

6:20

6:30

6:35

6:37

……

起床真是令人困擾的事情,有的人根本不用定鬧鐘,但有的人提前半個小時鬧鐘都叫不醒,你的鬧鐘怎么定的?

舉個粒子:

現(xiàn)在這天氣真的就很需要鬧鐘,每天8點不然真的醒不來

兩個鬧鐘都喊不起,最少需要三個鬧鐘。需要,而且每5分鐘一個。

我是起床困難戶{需要5-6個鬧鐘},但我能克服熬夜早點睡的時候,第二天只需要二、三個鬧鐘就能起來了。

我的鬧鐘都是每天晚上親自檢查好然后設置的,因為擔心漏掉了,怕早上遲到。

需要三個鬧鐘,2個隔比較近,1個隔10分鐘響,讓自己覺得賴床已經(jīng)好久,更開心的起床......

哈哈哈——今天的話就教教大家來制作一款小鬧鐘小程序~卡卡通通的外表才適合我嘛!

這款可愛的小鬧鐘是基于Tkinter做的界面哈——有界面更好看滴!

做的界面也是卡通的動漫的形象啦,當然也是可以隨意修改很多界面背景、參數(shù)的哈。

一、小科普

1)time 模塊

在Python中包含了若干個能夠處理時間的庫,而time庫是最基本的一個,是Python中處理時間的標準庫。time庫能夠表達計算機時間,提供獲取系統(tǒng)時間并格式化輸出的方法,提供系統(tǒng)級精確計時功能(可以用于程序性能分析)。

time庫包含三類函數(shù),以下介紹常用的函數(shù):

  • 時間獲?。簍ime()、ctime()、gmtime()   
  • 時間格式化:strftime()、strptime()   
  • 程序計時:sleep()、perf_counter()

2)messagebox模塊

messagebox可用在消息提示框、警告框、詢問框、錯誤、關于等會話框,messagebox可以很方便實現(xiàn)相關對話框的彈出。

二、準備中

1)環(huán)境安裝

該項目運行環(huán)境:Python3、Pycharm、Pygame、Tkinter、time模塊等一些自帶的不一一介紹了哈。庫的安裝統(tǒng)一使用:

pip install +模塊名 或帶豆瓣鏡像源 pip install -i https://pypi.douban.com/simple/ +模塊名

2)素材(音樂+背景可修改)

三、開始敲代碼

1)導入模塊

from os import environ
environ['PYGAME_HIDE_SUPPORT_PROMPT'] = '1'
import pygame
import time  # 導入此模塊,獲取當前時間
from tkinter import *
from tkinter import messagebox #彈窗
import threading

2)界面設置

標題,界面的大小寬度,文字等等都設置好了哈。

def sleeptime(hour, min, sec):
    return hour * 3600 + min * 60 + sec
def GUI_TIME():
    window = Tk()
    window.title('來自一位小可愛')
    window.geometry('505x430+300+100')
    canvas = Canvas(window, height=500, width=500)
    image_file = PhotoImage(file='01.gif')
    image = canvas.create_image(0, 0, anchor='nw', image=image_file)
    canvas.pack(side='top')
    Label(window, text='添加鬧鐘: ').place(x=130, y=200)
    Label(window,text = "帥的人已經(jīng)醒了,丑的人還在睡覺",fg = 'red').place(x = 140,y = 80)
    var_usr_name = StringVar()
    var_usr_name.set('24:59')
    entry_usr_name = Entry(window, textvariable=var_usr_name, background='pink')
    entry_usr_name.place(x=250, y=200)

3)獲取當前實時時間

def gg1():
        index = 0
        try:
            my_hour,my_minute = start()
        except:
            messagebox.showwarning("提醒","請注意:是否為中文輸入法的:")
            index = 1
        if(index == 0):
            window_sign_up = Toplevel(window)
            window_sign_up.attributes("-toolwindow", 1)
            window_sign_up.wm_attributes("-topmost", 1)
            window_sign_up.geometry('200x100+400+150')
            Label(window_sign_up, text='當前時間為: ').place(x=0, y=10)
            window_sign_up.title('顧木子吖')
            b1 = Button(window_sign_up, text=' 退出 ', command=window.quit,fg = 'red')
            b1.place(x=50, y=50)
            str = StringVar()
            l = Label(window_sign_up, textvariable=str,fg = 'red').place(x=80, y=10)
            cw = 1
            while cw == 1:
                t = time.localtime()  # 當前時間的紀元值
                fmt = "%H %M"
                times = "%H : %M : %S"
                now = time.strftime(fmt, t)  # 將紀元值轉化為包含時、分的字符串
                times = time.strftime(times, t)   #顯示的時間
                now = now.split(' ')
                hour = now[0]
                minute = now[1]
                str.set(times)
                if (hour == my_hour and minute == my_minute):
                    str.set("時間到了")
                    play_music()
                time.sleep(0.95)
 
    def start():
        timea = var_usr_name.get()
        my_hourtotal = timea.split(":")  # 時間
        my_hour = my_hourtotal[0]  # 小時
        my_minute = my_hourtotal[1]  # 分鐘
        return my_hour,my_minute
    def ff1():
        try:
            ff()
        except:
            messagebox.showwarning("請注意:是否為中文輸入法的:")
    def ff():
        thread = threading.Thread(target=gg1)
        thread.daemon = True
        thread.start()

4)設置開始、退出按鈕

  btn_sign_up = Button(window, text=' 開始 ', command=lambda: ff())
    btn_sign_up.place(x=130, y=300)
    b1 = Button(window, text=' 退出 ', command=window.quit)
 
    b1.place(x=250, y=300)
    b2 = Button(window,text = " ? ",command = problem_mail)
    b2.place(x=420,y=390)
    window.mainloop()

5)設置到點播放音樂

def play_music():
    #str.set("時間到了")
    filepath = r"良人樂團 - 春節(jié)的鞭炮.mp3";
    pygame.mixer.init()
    # 加載音樂
    pygame.mixer.music.load(filepath)
    pygame.mixer.music.play(start=0.0)
    # 播放時長,沒有此設置,音樂不會播放,會一次性加載完
    time.sleep(290)
    pygame.mixer.music.stop()

6)額外設置的一個彈窗提醒

def problem_mail():
    messagebox.showinfo("看文末")

四、效果展示

隨機展示part1

“帥的人已經(jīng)起來了,丑的人還在睡覺”

?

隨機展示part2

“就算全世界把你遺忘,鬧鐘都會記得你”

總結

這不?這個鬧鐘界面又可愛顏值又高,沒有人會拒絕的叭,以后要搶購啥的還可以多設置幾個鬧鐘

準時起來搶東西了哈。

到此這篇關于利用Python編寫一個鬧鐘,治好你的拖延癥的文章就介紹到這了,更多相關Python鬧鐘內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論