大约一个月前,我最近完成了 Python 课程。我正在通过创建程序继续扩展我对 Python 的了解。
下面的代码是一个 Python 倒计时程序的程序。该程序所做的是它要求用户输入秒、分钟和小时的计数。
无论如何,我注意到程序中出现了 2 个错误。
第一个错误: 如果我们输入小时和秒计数(并且没有分钟计数),程序将计算该特定小时的剩余时间,但它不会减去小时并将分钟设置回 59。相反,它会打印分钟为负数。
第二个错误: 如果我们输入小时、秒和分钟计数,程序将计算剩余时间。但是当程序到达最后一分钟(即 01:00:59)时,它会跳过那一分钟并继续下一分钟(即 00:59:59)。
关于第二个错误:假设我输入 1 小时 1 分钟 5 秒。它会倒计时 5 秒。然后计算机将打印 1:00:00。而不是倒计时那一分钟的秒数。它会跳到 0:59:59。希望能有所帮助 如果我能在修复这两个错误方面获得一些帮助,并且可能是一种以不同方式格式化程序的方法,那将是非常棒的。
感谢您的阅读,我期待您的回答,-匿名
import time
time_count = 0
second = int(raw_input("Seconds:"))
count_minute = int(raw_input("Minutes:"))
count_hour = int(raw_input("Hours:"))
time_count += second
time_count += count_minute * 60
time_count += count_hour * 3600
def clean():
global second
global count_minute
global count_hour
print_second = str(second).zfill(2)
print_minute = str(count_minute).zfill(2)
print_hour = str(count_hour).zfill(2)
print "%s:%s:%s" % (print_hour, print_minute, print_second)
time.sleep(1)
clean()
time.sleep(1)
for i in range(1, time_count + 1)[::-1]:
if second == 0 and count_minute == 0 and count_hour == 0:
clean()
break
elif second != 0:
second -= 1
elif second == 0:
count_minute -= 1
second = 59
if count_minute == 0 and count_hour > 0:
clean()
count_hour -= 1
count_minute = 59
clean()
time.sleep(1)
print """
Timer Finished.
"""