📌  相关文章
📜  Python程序将秒转换为小时、分钟和秒

📅  最后修改于: 2022-05-13 01:54:39.173000             🧑  作者: Mango

Python程序将秒转换为小时、分钟和秒

给定一个整数n (以秒为单位),将其转换为小时、分钟和秒。

例子:

Input : 12345
Output : 3:25:45

Input : 3600
Output : 1:00:00

方法#1:天真

这种方法只是通过简单的数学计算来获取小时、分钟和秒的简单方法。

# Python Program to Convert seconds
# into hours, minutes and seconds
  
def convert(seconds):
    seconds = seconds % (24 * 3600)
    hour = seconds // 3600
    seconds %= 3600
    minutes = seconds // 60
    seconds %= 60
      
    return "%d:%02d:%02d" % (hour, minutes, seconds)
      
# Driver program
n = 12345
print(convert(n))
输出:
3:25:45


方法 #2:替代 Naive 方法

通过使用divmod()函数,它只执行一次除法来产生商和余数,您只需两个数学运算就可以非常快速地得到结果。

# Python Program to Convert seconds
# into hours, minutes and seconds
  
def convert(seconds):
    min, sec = divmod(seconds, 60)
    hour, min = divmod(min, 60)
    return "%d:%02d:%02d" % (hour, min, sec)
      
# Driver program
n = 12345
print(convert(n))
输出:
3:25:45

方法 #3:使用timedeltadatetime时间模块的对象)

Datetime 模块提供timedelta对象,它表示一个持续时间,两个日期或时间之间的差异。 datetime.timedelta可用于将秒表示为小时、分钟和秒格式。

# Python Program to Convert seconds
# into hours, minutes and seconds
import datetime
  
def convert(n):
    return str(datetime.timedelta(seconds = n))
      
# Driver program
n = 12345
print(convert(n))
输出:
3:25:45


方法 #4:使用time.strftime()

time.strftime()可以更好地控制格式。格式和time.gmtime()作为参数传递。 gmtime用于将秒转换为strftime()所需的特殊元组格式。

# Python Program to Convert seconds
# into hours, minutes and seconds
  
import time
  
def convert(seconds):
    return time.strftime("%H:%M:%S", time.gmtime(n))
      
# Driver program
n = 12345
print(convert(n))
输出:
03:25:45