用Python写一个简单的计时器

代码如下:

# -*- coding: utf-8 -*-

import time
import tkinter as tk

class Timer:
    def __init__(self, master):
        self.master = master
        master.title("计时器")

    self.current_time_label = tk.Label(master, text="当前时间")
    self.current_time_label.grid(row=0, column=0)
    self.current_time_value = tk.Label(master, text="")
    self.current_time_value.grid(row=0, column=1)
    self.update_current_time()

    self.timer_label = tk.Label(master, text="计时")
    self.timer_label.grid(row=1, column=0)
    self.timer_value = tk.Label(master, text="0:00:00")
    self.timer_value.grid(row=1, column=1)

    self.start_button = tk.Button(master, text="开始", command=self.start_timer)
    self.start_button.grid(row=2, column=0)
    self.stop_button = tk.Button(master, text="停止", command=self.stop_timer)
    self.stop_button.grid(row=2, column=1)
    self.reset_button = tk.Button(master, text="重置", command=self.reset_timer)
    self.reset_button.grid(row=2, column=2)

    self.start_time = None
    self.elapsed_time = 0
    self.is_running = False
    self.update_timer()

def update_current_time(self):
    current_time = time.strftime("%H:%M:%S")
    self.current_time_value.configure(text=current_time)
    self.master.after(1000, self.update_current_time)

def update_timer(self):
    if self.is_running:
        self.elapsed_time = time.time() - self.start_time
        formatted_time = time.strftime('%H:%M:%S', time.gmtime(self.elapsed_time))
        self.timer_value.configure(text=formatted_time)
    self.master.after(10, self.update_timer)

def start_timer(self):
    if not self.is_running:
        self.is_running = True
        self.start_time = time.time()

def stop_timer(self):
    if self.is_running:
        self.is_running = False

def reset_timer(self):
    self.is_running = False
    self.elapsed_time = 0
    self.timer_value.configure(text="0:00:00")

root = tk.Tk()
timer = Timer(root)
root.mainloop()

直接运行即可使用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 好的,我可以帮您编一个Python计时器程序。以下是一个基本的示例: ```python import time def countdown(t): while t: mins, secs = divmod(t, 60) timer = '{:02d}:{:02d}'.format(mins, secs) print(timer, end="\r") time.sleep(1) t -= 1 print('计时结束!') t = input("请输入倒计时时间(秒): ") countdown(int(t)) ``` 这个程序会要求用户输入倒计时的秒数,并且倒计时从输入的秒数开始。程序使用了time库来实现计时器功能,并且在控制台输出当前的倒计时。计时结束后,程序会输出“计时结束!”来提示用户。 希望这个示例程序能够帮到您! ### 回答2: 要用Python一个计时器,可以使用time模块来实现。以下是一个简单计时器实现示例: ```python import time def timer(hours, minutes, seconds): total_time = hours * 3600 + minutes * 60 + seconds while total_time > 0: hours = total_time // 3600 minutes = (total_time % 3600) // 60 seconds = total_time % 60 # 格式化时间输出 time_formatted = "{:02d}:{:02d}:{:02d}".format(hours, minutes, seconds) print(time_formatted) time.sleep(1) # 暂停1秒钟 total_time -= 1 print("时间到!") # 设置需要计时的时间 hours = 2 minutes = 30 seconds = 0 # 启动计时器 timer(hours, minutes, seconds) ``` 以上代码中的`timer()`函数接受三个参数:小时(hours)、分钟(minutes)和秒(seconds)。计算总时间后,使用一个循环来倒计时并输出当前时间,每秒钟暂停1秒,并将总时间减1,直到总时间为0时停止计时。 你可以根据需要调整函数中的时间参数,然后运行程序,就可以看到计时器的输出结果。 ### 回答3: 使用Python一个简单计时器可以通过time模块来实现。以下是一个基本的计时器程序示例: ```python import time def timer(seconds): start_time = time.time() elapsed_time = 0 while elapsed_time < seconds: time.sleep(1) # 每秒钟暂停1秒 elapsed_time = time.time() - start_time print("计时结束!") # 设置计时器时长为10秒 timer(10) ``` 上述代码中,timer()函数接收一个参数`seconds`代表计时器的时长,使用time模块中的time()函数获取当前时间戳作为起始时间,然后通过一个循环来检查已经流逝的时间是否小于给定的`seconds`。每次循环暂停1秒钟,计算已经流逝的时间。当已经流逝的时间大于等于`seconds`时,输出"计时结束"的提示信息。 如果你想要在计时器结束后执行其他操作,可以将其他操作放在"计时结束"的提示信息之后来实现。另外,你也可以根据需求对计时器程序进行自定义的修改,例如增加分钟和小时的支持等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hank-Zheng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值