You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现mm:ss格式输入倒计时器 解决时间格式拆分问题

倒计时计时器问题修复方案

核心问题定位

代码问题确实出在循环前的时间拆分逻辑:

  • 直接用下标切片的方式拆分mm:ss格式字符串完全错误,time_sec[:0]返回空字符串,转int会直接抛出异常
  • 额外引入的temp变量逻辑冗余,无法适配分钟为两位数的场景
  • 打印补零的实现方式不符合需求

修复后的可运行代码

import time

def countdown(time_str):
    # 按冒号拆分时间字符串,分别拿到分钟和秒
    minutes, seconds = map(int, time_str.split(':'))
    while True:
        # 格式化输出mm:ss格式,自动补前导零
        print(f'\r{minutes:02d}:{seconds:02d}', end='')
        # 倒计时结束判断
        if minutes == 0 and seconds == 0:
            break
        time.sleep(1)
        # 秒数递减逻辑
        seconds -= 1
        if seconds < 0:
            seconds = 59
            minutes -= 1
    print('\nSTOP')

x = input("Countdown Time Limit: ")
countdown(x)

关键修改说明

  • 拆分字符串改用split(':')方法,直接按分隔符切分分钟和秒,适配任意合法的mm:ss格式输入
  • 移除冗余的temp变量,使用Python字符串格式化语法{变量:02d}自动实现不足两位时补前导零的效果
  • 调整倒计时结束判断逻辑,避免多减一秒的问题
  • 优化秒数递减的顺序,避免出现负数展示的问题

内容的提问来源于stack exchange,提问作者Dean1244

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 06:45:03