zoukankan      html  css  js  c++  java
  • Python简单的闹钟程序(Win)+开机自启

    上周我忽然腰疼得厉害,医生说是因为久坐+着凉+湿气重造成的,所以就寻思着做一个简单的小程序。让它上班时间播放一段音乐来提醒自己站起来动动。

    (1)闹钟代码 alarm.py

    思路很简单,程序运行后一直循环着,检查时分:

    • 如果是“站起时分”,就播放39秒的音乐,播放结束后程序休眠21秒;
    • 如果不是“站起时分”,就休眠60秒吧。

    Alarm.py:

    import time
    import sys
    import winsound
    import os
    import time
    
    soundFile = 'Birdy - Let Her Go (Originally By Passenger).wav'
    
    def soundStart():
        winsound.PlaySound(soundFile,winsound.SND_FILENAME)
        time.sleep(21)#the music lasts for 39 secs,so sleep for 21 secs.
    
    while(1 == 1):
        # get now time
        dt = list(time.localtime())
        hour = dt[3]
        minute = dt[4]
    
        # play sound when it is the time for alarm.
        if (hour == 9 and minute == 40) or (hour == 10 and minute == 30) or 
            (hour == 14 and minute == 10) or (hour == 15 and minute == 00) or 
            (hour == 15 and minute == 58) or  (hour == 16 and minute == 40) or 
            (hour == 11 and minute == 20):
            soundStart()
        else:
            time.sleep(60)

    (2)开机自启

    首先选择“运行”,输入以下黄字:

    shell:Startup

    确定,进入到C:UsersScarlettAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup文件夹下。

    下一步,只要将可执行的文件放进来,就可以开机自启了。

    插播一些疑问:

    网上有说过直接拷贝python .py文件或者它的快捷方式进这个启动文件夹,就可以自启成功。但是我用了这个方法,开机提醒我说找不动可执行可执行该文件的应用程序。我又试过了Py2exe和cx_freeze还有Pyinstaller,都没有成功地将py文件转化成exe文件。不知道为什么这么悲剧?

    最后我才想到把运行py文件的cmd命令行装在一个bat文件里:

    alarm.bat:

    cd C:UsersScarlettPycharmProjectsAlarm
    
    python Alarm.py
    
    pause

    再把这个.bat文件拷到“启动”目录下。下次开机以后,会自动弹出cmd窗口,表示出成功啦:

  • 相关阅读:
    【Educational Codeforces Round 101 (Rated for Div. 2) C】Building a Fence
    【Codeforces Round #698 (Div. 2) C】Nezzar and Symmetric Array
    【Codeforces Round #696 (Div. 2) D】Cleaning
    【Codeforces Round #696 (Div. 2) C】Array Destruction
    【Educational Codeforces Round 102 D】Program
    【Educational Codeforces Round 102 C】No More Inversions
    【Good Bye 2020 G】Song of the Sirens
    【Good Bye 2020 F】Euclid's nightmare
    使用mobx入门
    requestAnimationFrame 控制速度模拟setinterval
  • 原文地址:https://www.cnblogs.com/danscarlett/p/7250921.html
Copyright © 2011-2022 走看看