如何将 int(秒数)转换为 mm:ss 或 hh:mm:ss 格式?
我需要使用 Python 代码(如果可能的话,在 Django 模板中)来执行此操作。
最佳答案
我无法相信许多答案中的任何一个都给出了我认为的“一种明显的方法”(我什至不是荷兰人......!-) - 最多不到 24 小时' 秒(具体为 86399 秒):
>>> import time
>>> time.strftime('%H:%M:%S', time.gmtime(12345))
'03:25:45'
在 Django 模板中执行此操作更加挑剔,因为 time
过滤器支持时髦的时间格式化语法(我相信,灵感来自 PHP),并且还需要 datetime 模块和时区pytz 等实现来准备数据。例如:
>>> from django import template as tt
>>> import pytz
>>> import datetime
>>> tt.Template('{{ x|time:"H:i:s" }}').render(
... tt.Context({'x': datetime.datetime.fromtimestamp(12345, pytz.utc)}))
u'03:25:45'
根据您的具体需求,在您的应用中为此格式化任务定义自定义过滤器可能会更方便。
关于python - 将秒转换为 hh :mm:ss in Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1384406/