Python时钟时间加1秒后如何按HH:MM:SS格式输出
实现HH:MM:SS格式输出的修改方案
不需要改动现有时间计算的核心逻辑,只需要替换打印输出的代码,用Python格式化字符串语法实现固定两位、冒号分隔的显示效果即可。
具体修改方法
将原代码最后一行的print(hours, minutes, seconds)替换为f-string格式化输出,格式符使用:02d,作用是将整数转为固定两位长度的十进制表示,不足两位时高位自动补0:
print(f"{hours:02d}:{minutes:02d}:{seconds:02d}")
修改后完整可运行代码
(注:原代码存在缩进冗余、hours计算行多写一个右括号的语法问题,已修正为合法写法,计算逻辑完全和原有实现一致)
from easyinput import read h = read(int) m = read(int) s = read(int) seconds = (s+1)%60 minutes = (m + (s+1)//60)%60 hours = h + (m + (s+1)//60)//60 print(f"{hours:02d}:{minutes:02d}:{seconds:02d}")
效果验证
- 输入
13 59 59,输出为14:00:00 - 输入
11 33 15,输出为11:33:16 - 输入
0 0 0,输出为00:00:01 - 输入
1 2 3,输出为01:02:04
输出完全匹配要求的HH:MM:SS显示样式。如果后续需要处理23:59:59加1秒后转00:00:00的24小时制循环,只需要给hours的计算结果加%24即可,这部分属于提到的可优化逻辑,当前暂不调整。
内容的提问来源于stack exchange,提问作者lala
相关产品推荐
相关产品推荐

