Python中的时分秒格式怎么转换成毫秒? (超过 24 小时)

How can you convert milliseconds in a format with hours, minutes and seconds in Python? (over 24 hours)

我在 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 小时

您可以使用内置的 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