前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于speech模块的久坐提醒小程序「建议收藏」

基于speech模块的久坐提醒小程序「建议收藏」

作者头像
全栈程序员站长
发布2022-11-14 15:03:46
3030
发布2022-11-14 15:03:46
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

每天在电脑前坐很长的时间,因为有时候太过投入一下子就过去了若干个小时,容易猝死。于是心血来潮的想要写一个防久坐提醒小程序: 为了搞清楚speech的调用方法,请先阅读这一篇speech模块的使用方法。 第一种模式(最简单模式),若输入伏案工作时间数值不对则产生一个错误并退出。 代码如下:

代码语言:javascript
复制
import speech
import time
class 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中加入其他的附加功能,比如过一段时间的提醒,甚至是毒鸡汤等等,可自由发挥,代码如下:

代码语言:javascript
复制
import speech
import time
class 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()中的内容替换为英语或者汉语。 强烈推荐先阅读speech模块的使用方法如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/187316.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月30日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档