当前位置: 首页 > ds >正文

python 写一个工作 简单 番茄钟

1、图

 2、需求

番茄钟(Pomodoro Technique)是一种时间管理方法,由弗朗西斯科·西里洛(Francesco Cirillo)在 20 世纪 80 年代创立。“Pomodoro”在意大利语中意为“番茄”,这个名字来源于西里洛最初使用的一个形似番茄的厨房定时器。

该方法的基本理念是将工作时间划分为固定长度的“工作时段”和“休息时段”。通常,一个完整的番茄钟周期包括 25 分钟的工作时间和 5 分钟的休息时间。每完成四个番茄钟周期后,可以进行一次较长时间的休息,比如 15 - 30 分钟。

使用番茄钟的步骤如下:

1. 选择一个待完成的任务。
2. 将番茄钟设定为 25 分钟,开始专注工作。
3. 直到番茄钟响起,在纸上画一个 X 进行记录。
4. 休息 5 分钟。
5. 每完成 4 个番茄钟,进行一次 15 - 30 分钟的长时间休息。
这种时间管理方法有助于提高工作效率,减少拖延,同时也能让大脑得到适当的休息,避免过度疲劳。

 3、代码:

import tkinter as tk
import time
import winsound# 定义番茄钟的时间(单位:分钟)
WORK_TIME = 25
BREAK_TIME = 15
LONG_BREAK_TIME = 20  # 长时间休息时间,可在 15 - 30 分钟间调整
POMODORO_COUNT_FOR_LONG_BREAK = 4class PomodoroScreensaver:def __init__(self, root):self.root = rootself.root.attributes('-fullscreen', True)self.root.configure(bg='black')self.root.bind('<Escape>', self.quit_screensaver)self.time_left = WORK_TIME * 60self.is_working = Trueself.pomodoro_count = 0self.label = tk.Label(root, text=self.format_time(self.time_left), font=('Helvetica', 100), fg='white', bg='black')self.label.pack(expand=True)self.update_clock()def format_time(self, seconds):minutes = seconds // 60remaining_seconds = seconds % 60return f'{minutes:02d}:{remaining_seconds:02d}'def update_clock(self):if self.time_left > 0:self.time_left -= 1self.label.config(text=self.format_time(self.time_left))# 根据工作状态更新字体颜色if self.is_working:self.label.config(fg='red')else:self.label.config(fg='green')self.root.after(1000, self.update_clock)else:if self.is_working:self.pomodoro_count += 1winsound.Beep(2000, 1000)if self.pomodoro_count % POMODORO_COUNT_FOR_LONG_BREAK == 0:self.time_left = LONG_BREAK_TIME * 60else:self.time_left = BREAK_TIME * 60self.is_working = Falseelse:winsound.Beep(2000, 1000)self.time_left = WORK_TIME * 60self.is_working = True# 切换状态后更新字体颜色if self.is_working:self.label.config(fg='red')else:self.label.config(fg='green')self.update_clock()def quit_screensaver(self, event=None):self.root.destroy()if __name__ == "__main__":root = tk.Tk()app = PomodoroScreensaver(root)root.mainloop()

注:字体变色 工作红色  休息 绿色  过度有响声

http://www.xdnf.cn/news/5625.html

相关文章:

  • Linux-Ubuntu安装Stable Diffusion Forge
  • 【计组】真题
  • 快速傅里叶变换暴力涨点!基于时频特征融合的高创新时间序列分类模型
  • 相或为K(位运算)蓝桥杯(JAVA)
  • 【C++】16.继承
  • PHP API安全设计四要素:构建坚不可摧的接口防护体系
  • linux kernel调度触发机制
  • 现有预测式外呼系统如何接入AI系统,使用AI辅助,判断出意向客户再转人工
  • 红外遥控键
  • RDD 两类操作详解(Scala):转换与行动
  • postgresql主从一键安装脚本分享
  • Nginx 使用 Keepalived 搭建 nginx 高可用
  • 力扣刷题——二分查找总结
  • js事件循环机制
  • C++初阶-string类的模拟实现1
  • C++题题题题题题题题题踢踢踢
  • 《Go小技巧易错点100例》第三十二篇
  • Redis 缓存
  • C 语言数据结构基石:揭开数组名的面纱与计算数组大小
  • AQS(AbstractQueuedSynchronizer)解析
  • m1 安装 Elasticsearch、ik、kibana
  • 树莓派5+UPS电源 5v
  • 快速搭建一个vue前端工程
  • 大疆卓驭嵌入式面经及参考答案
  • 理解微积分 | 概念 / 定义 / 性质 / 关系
  • Kafka的基本概念和Dokcer中部署Kafka
  • 从0开始学linux韦东山教程第三章问题小结(3)
  • Python-3.14.0|Win英文|python编译器|安装教程
  • NoSQL数据库技术与应用复习总结【看到最后】
  • 第四节第一部分:继承,使用继承的好处