最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用python實(shí)現(xiàn)全屏愛心雨向喜歡的人表白

 更新時(shí)間:2023年05月15日 09:57:41   作者:完美,其實(shí)并不美  
馬上520了,教大家用Python做一個(gè)下愛心雨的特效,這篇文章主要給大家介紹了關(guān)于利用python實(shí)現(xiàn)全屏愛心雨向喜歡的人表白的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

以下核心代碼參考黑客帝國的界面的雨滴圖和網(wǎng)友的愛心素材

一 音樂播放

def alarm():
    # 初始化模
    pygame.init()
    pygame.mixer.init()
    # 加載一個(gè)音樂
    file = r'C:\Users\95853\PycharmProjects\contanctoracle\.mp3'
    pygame.mixer.music.load(file)
    pygame.mixer.music.play()
    time.sleep(65)    # 播放65秒
    pygame.mixer.music.stop() # 停止播放

二 愛心創(chuàng)建

def rainmake(canvas, imagefile):
    rainlist = []
    for i in range(20):
        # 根據(jù)圖片,創(chuàng)建一排心
        rainlist.append(canvas.create_image(100 + 80 * i, INIT_HEIGHT, anchor=NE, image=imagefile))
    return rainlist

三 愛心下落

ef raindown(tk, canvas, imagefile, sec):
    # 線程間等待
    time.sleep(sec)
    rainlist = rainmake(canvas, imagefile)

    # 每顆心的縱坐標(biāo)值
    height = [INIT_HEIGHT] * 20
    while True:
        # 每次移動(dòng)前稍等一會(huì)
        time.sleep(0.2)

        # 20顆心一起移動(dòng)
        for i in range(20):
            # 如果這顆心到底了,則不繼續(xù)移動(dòng),否則height重置就無效了
            if not height[i] == 0:
                # 設(shè)置下落步調(diào)
                rnd = random.randint(5, 50)
                canvas.move(rainlist[i], 0, rnd)
                height[i] = height[i] + rnd
                tk.update()

        for i, h in enumerate(height):
            if h > 600:
                # 當(dāng)這顆心走到最下方,則刪除
                canvas.delete(rainlist[i])
                tk.update()
                # 清空這顆心的height
                height[i] = 0
                print(i, h, height)

        # 20顆心全到底,則跳出循環(huán)
        if height == [0] * 20:
            print('break:', threading.current_thread().name)
            break

四 展示表白語

def lookloop(tk, canvas, thread):
    aliveflg = False
    alarm()
    while True:
        # 5s檢測一次
        time.sleep(5)
        for th in thread:
            if th.is_alive():
                aliveflg = True
            else:
                aliveflg = False
        if aliveflg == False:
            break
    # Over
    text = '雨停了,But.I Love You Too...'
    # canvas.font = "bold 4000px Arial"
    canvas.create_text(1050, 450, text=text, fill='red', anchor='e', font=('宋體', 40,))
    canvas.pack()
    time.sleep(10)
    tk.destroy()

五 主函數(shù)創(chuàng)建窗口對(duì)象和開啟多線程

def main():
    # 創(chuàng)建窗口對(duì)象
    tk = Tk()
    tk.title('愛心之雨')

    canvas_style = {
        'bg': 'white',
        'height': '1000',
        'width': '1400',
        'cursor': 'circle'
    }
    # 創(chuàng)建畫布
    canvas = Canvas(tk, canvas_style)
    canvas.pack()
    imagefile = PhotoImage(file="7777777.gif")

    thread = []
    for i in range(60):#60
        thread.append(threading.Thread(target=raindown, args=(tk, canvas, imagefile, i)))
    for t in thread:
        t.start()

    # 新開一個(gè)線程監(jiān)控運(yùn)行中的60個(gè)線程
    threading.Thread(target=lookloop, args=(tk, canvas, thread)).start()

效果如下圖:

動(dòng)態(tài)愛心下落時(shí),播放音樂,播完后展示一句表白話。

總結(jié) 

到此這篇關(guān)于利用python實(shí)現(xiàn)全屏愛心雨向喜歡的人表白的文章就介紹到這了,更多相關(guān)python實(shí)現(xiàn)全屏愛心雨內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python實(shí)現(xiàn)備份文件實(shí)例

    Python實(shí)現(xiàn)備份文件實(shí)例

    這篇文章主要介紹了Python實(shí)現(xiàn)備份文件的方法,可實(shí)現(xiàn)針對(duì)各類常見擴(kuò)展名的文件進(jìn)行備份的功能,需要的朋友可以參考下
    2014-09-09
  • Python根據(jù)字典的值查詢出對(duì)應(yīng)的鍵的方法

    Python根據(jù)字典的值查詢出對(duì)應(yīng)的鍵的方法

    這篇文章主要介紹了Python根據(jù)字典的值查詢出對(duì)應(yīng)的鍵的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Python實(shí)現(xiàn)文本文件拆分寫入到多個(gè)文本文件的方法

    Python實(shí)現(xiàn)文本文件拆分寫入到多個(gè)文本文件的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)文本文件拆分寫入到多個(gè)文本文件的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • 如何用python編寫一個(gè)生成春聯(lián)軟件

    如何用python編寫一個(gè)生成春聯(lián)軟件

    大家好,本篇文章主要講的是如何用python編寫一個(gè)生成春聯(lián)軟件,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • python實(shí)現(xiàn)word 2007文檔轉(zhuǎn)換為pdf文件

    python實(shí)現(xiàn)word 2007文檔轉(zhuǎn)換為pdf文件

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)word 2007文檔轉(zhuǎn)換為pdf文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python內(nèi)建函數(shù)Built_in Funtions用法示例詳解

    Python內(nèi)建函數(shù)Built_in Funtions用法示例詳解

    這篇文章主要為大家介紹了Python內(nèi)建函數(shù)Built_in Funtions用法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • 使用python-magic和wxPython實(shí)現(xiàn)識(shí)別文檔類型

    使用python-magic和wxPython實(shí)現(xiàn)識(shí)別文檔類型

    這篇文章主要介紹了如何使用python-magic模塊和wxPython庫創(chuàng)建一個(gè)簡單的文件列表應(yīng)用程序,該應(yīng)用程序可以顯示所選文件夾中文件的類型,需要的可以參考下
    2023-08-08
  • Python探索之自定義實(shí)現(xiàn)線程池

    Python探索之自定義實(shí)現(xiàn)線程池

    這篇文章主要介紹了Python探索之自定義實(shí)現(xiàn)線程池,使用queue實(shí)現(xiàn)線程池的方法,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-10-10
  • 深入理解python協(xié)程

    深入理解python協(xié)程

    協(xié)程又稱為微線程,協(xié)程是一種用戶態(tài)的輕量級(jí)線程,它是實(shí)現(xiàn)多任務(wù)的另一種方式,只不過是比線程更小的執(zhí)行單元。因?yàn)樗詭PU的上下文,這樣只要在合適的時(shí)機(jī),我們可以把一個(gè)協(xié)程切換到另一個(gè)協(xié)程
    2021-06-06
  • Python3中zip()函數(shù)知識(shí)點(diǎn)小結(jié)

    Python3中zip()函數(shù)知識(shí)點(diǎn)小結(jié)

    本文主要介紹了Python3中zip()函數(shù)知識(shí)點(diǎn)小結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02

最新評(píng)論

绍兴市| 永善县| 九江县| 东辽县| 平谷区| 新龙县| 寿阳县| 潮州市| 苗栗市| 望江县| 威远县| 杂多县| 方山县| 闵行区| 济宁市| 澄城县| 鄱阳县| 革吉县| 柳林县| 巨鹿县| 东山县| 余庆县| 茶陵县| 广丰县| 衡阳县| 连江县| 洞口县| 商河县| 五莲县| 铜山县| 吉安市| 清远市| 邹平县| 宝山区| 安平县| 策勒县| 昭平县| 富裕县| 沧源| 延安市| 榆林市|