基于speech模块的久坐提醒小程序
发布日期:2021-05-07 04:09:35 浏览次数:17 分类:精选文章

本文共 2723 字,大约阅读时间需要 9 分钟。

每天在电脑前坐很长的时间,因为有时候太过投入一下子就过去了若干个小时,容易猝死。于是心血来潮的想要写一个防久坐提醒小程序:

为了搞清楚speech的调用方法,请先阅读这一篇。
第一种模式(最简单模式),若输入伏案工作时间数值不对则产生一个错误并退出。
代码如下:

import speechimport timeclass Debug:    def __init__(self):        self.start_time = time.time()                self.minutes = int(input("How many minutes do you prefer: \n"))            if 0 >= self.minutes or self.minutes > 60:            raise ValueError("The input number should in interval (0, 60]")                            self.seconds = self.minutes * 60        speech.say("Jetzt los")            def mainProgram(self):        while round(time.time() - self.start_time) != self.seconds:            pass        speech.say("Du solllest dich ausruhen")				                main = Debug()main.mainProgram()

然而每次都要退出并重新运行一次就显得很麻烦,并且当输入的值不能够被转换为整数类型时程序会直接报错。于是可以进行循环输入工作时间,直到工作时间符合要求,并且我们也可以在mainProgram中加入其他的附加功能,比如过一段时间的提醒,甚至是毒鸡汤等等,可自由发挥,代码如下:

import speechimport timeclass Debug:    def __init__(self):        self.start_time = time.time()                self.flag = True                self.minutes = input("How many minutes do you prefer: \n")                while self.flag:            if self.minutes.startswith('-'):                if self.minutes.lstrip('-').isdigit():                    self.minutes = int(self.minutes)                else:                    print("")                    print("The input should be a number in interval [0, 60]~", end="")                    self.minutes = input("please input a correct value: \n")                    continue                             elif self.minutes.lstrip('-').isdigit():                self.minutes = int(self.minutes)                            else:                print("")                print("The input should be a number in interval [0, 60]~~", end="")                self.minutes = input("please input a correct value: \n")                continue                                             if 0 < self.minutes <= 60:                speech.say("Jetzt los")                self.flag = False            else:                print("")                print("The input number should in interval [0, 60]~~~", end="")                self.minutes = input("please input a correct value: \n")                continue                            self.seconds = self.minutes * 60                    def mainProgram(self):        while round(time.time() - self.start_time) != self.seconds:            pass        speech.say("Du solllest dich ausruhen")                main = Debug()main.mainProgram()

至此,一个简单的防久坐语音提醒小程序就完成了,当然还可以再添加其他的功能,甚至可以结合Pygame模块使用,功能会更加的强大。

说明:程序中打印的~~~~~~符号只是为了在debug时进行区分。直接拷贝上述程序可能无法运行,因为我的计算机默认语言为德语,而一般计算机的默认语言为英语或者是汉语,因此可以将speech.say()中的内容替换为英语或者汉语。 强烈推荐先阅读。
如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~

上一篇:python 赋值方法大全
下一篇:python speech模块的使用方法

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月02日 01时16分24秒