Python如何将运行消耗的秒数转换为H:M:S时间格式
实现秒数转
00:00:00格式的两种方案 方案1:手动计算(无额外依赖,兼容性最强)
直接通过数学运算拆分时分秒,再格式化补零即可,不需要导入额外模块:
# time_result为你已得到的总秒数 hours = time_result // 3600 remain = time_result % 3600 minutes = remain // 60 seconds = remain % 60 # 格式化输出,:02d表示不足2位时自动补前导零 formatted_time = f"{hours:02d}:{minutes:02d}:{seconds:02d}"
方案2:使用datetime标准库(代码更简洁)
如果不介意导入内置模块,可以用timedelta快速转换,注意需要处理耗时超过24小时的场景:
import datetime delta = datetime.timedelta(seconds=time_result) # 耗时不超过24小时可直接转字符串,输出天然符合00:00:00格式 formatted_time = str(delta) # 若存在耗时超过24小时的需求,用如下写法避免显示天数字段 total_sec = int(delta.total_seconds()) h = total_sec // 3600 m = (total_sec % 3600) // 60 s = total_sec % 60 formatted_time = f"{h:02d}:{m:02d}:{s:02d}"
测试示例
如果time_result = 3723(即1小时2分3秒),两种方案输出均为01:02:03,符合要求。
内容的提问来源于stack exchange,提问作者HedTB
相关产品推荐
相关产品推荐

