【问题标题】:How can you convert milliseconds in a format with hours, minutes and seconds in Python? (over 24 hours)如何在 Python 中将毫秒转换为具有小时、分钟和秒的格式? (超过 24 小时)
【发布时间】:2021-03-01 20:18:57
【问题描述】:

我无法在 python 中转换 24 小时的毫秒数。例如,如果我的输入是 ms_to_hours(86400000),我的结果是 '0:0:0',我不想在计算中包含天数。 这是我的代码

def ms_to_hours(millis):
    millis = int(millis)
    seconds = (millis / 1000) % 60
    seconds = int(seconds)
    minutes = (millis / (1000 * 60)) % 60
    minutes = int(minutes)
    hours = (millis / (1000 * 60 * 60)) % 24

    return("%d:%d:%d" % (hours, minutes, seconds))

我需要帮助来解决这个问题,以显示任何毫秒到(小时、分钟、秒),即使输入散发 24 小时

【问题讨论】:

  • 那么当输入 86400000 时,您的函数返回 0:0:0 而不是 24:0:0 是您的问题吗?

标签: python-3.x time data-conversion


【解决方案1】:

您可以使用内置的divmod

def ms_to_hours(millis):
    seconds, milliseconds = divmod(millis, 1000)
    minutes, seconds = divmod(seconds, 60)
    hours, minutes = divmod(minutes, 60)
    return ("%d:%d:%d" % (hours, minutes, seconds))


if __name__ == '__main__':
    print(ms_to_hours(88000000))

输出:

24:26:40

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-16
    • 2016-06-29
    • 2012-09-27
    • 1970-01-01
    • 2013-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多