23:59:59 之后的时间是 01:00:00,但我想要 24:29:59 之后的 01:00:00

问题描述

23:59:59 之后的时间是 01:00:00,但我想要 24:29:59 之后的 01:00:00

程序:

seconds = 56
minutes =59 
hours = 23
import time
from turtle import *
setup()
t1 = Turtle()
while True:
     t1.clear()
     t1.write(str(hours).zfill(2) + ":" + str(minutes).zfill(2) + 
":" + str(seconds).zfill(2))
     seconds = seconds + 1
     time.sleep(1)
     if seconds == 60:
         seconds = 0
         minutes = minutes + 1
     if minutes == 60:
         minutes = 0
         hours = hours + 1
     if hours == 24:
         hours = 0
         hours = hours + 1

输出: 23:59:59/ 01:00:00/ 01:00:01

我想要的输出: 24:29:59/ 01:00:00/ 01:00:01

解决方法

你的时钟不遵循正常时间的规则,但如果你真的想要你所问的,请为小时重置添加一个 if 语句

         if hours == 24 and minutes == 30:
             hours = 1
             minutes = 0
,

如果我理解正确的话,您希望您的时钟将午夜时间计算为 24,而不是 00,然后像往常一样移动到 01。您可以这样做,只需要更改您重置工作时间的位置。不是将 24 重置为 0,而是要将 25 重置为 1

while True:
    t1.clear()
    t1.write(str(hours).zfill(2) + ":" + str(minutes).zfill(2) + 
":" + str(seconds).zfill(2))
    seconds = seconds + 1
    time.sleep(1)
    if seconds == 60:
        seconds = 0
        minutes = minutes + 1
    if minutes == 60:
        minutes = 0
        hours = hours + 1
    if hours == 25:              # change here
        hours = 1                # and here

没有理由先重置为零然后递增,如果你直接设置为 1 就