如何在 Python 中将时间秒转换为 h:m:s 格式?
在本文中,我们将讨论在 Python 中将时间秒转换为 H M S 格式的各种方法。H M S 格式表示小时:分钟:秒。
使用算术运算(朴素方法)
在这种方法中,我们使用数学计算将时间秒转换为 h m s 格式。在这里,我们从用户那里获取以秒为单位的输入,并将其转换为所需的格式。
示例
在此示例中,我们将以秒为单位的时间转换为 h m s 格式。
seconds = int(input("Enter the number of seconds:")) seconds = seconds % (24 * 3600) hour = seconds // 3600 seconds %= 3600 minutes = seconds // 60 seconds %= 60 print("%d:%02d:%02d" % (hour, minutes, seconds))
输出
代码的输出如下所示。
Enter the number of seconds:5000000 20:53:20
使用 timedelta() 方法
在这种方法中,我们使用 .timedelta() 方法将时间秒转换为 h m s 格式。.timedelta() 方法由 datetime 库提供,通常用于计算给定日期之间的差异。我们还使用此方法来操作 Python 中的日期。
语法
timedelta() 方法的语法如下所示。
datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
这里只发送秒参数,因为我们需要将时间秒转换为 h m s 格式。
示例
以下是一个将时间秒转换为 H M S 格式的示例代码。
import datetime timedelta_obj = datetime.timedelta(seconds=7896354) print("Time in H M S format: ",timedelta_obj)
输出
以上代码的输出如下所示。
Time in H M S format: 91 days, 9:25:54
使用 .strftime() 方法
strftime() 方法由 Python 中的 datetime 模块提供。在这里,我们使用 strftime() 方法将字符串日期时间转换为日期时间。它也用于将日期时间转换为纪元时间。
纪元时间是时间的起点,并且依赖于平台。在 Windows 和大多数 Unix 系统上,纪元时间是 1970 年 1 月 1 日 00:00:00(UTC),并且纪元时间后的时间秒中不包括闰秒。我们使用 time.gmtime(0) 来获取给定平台上的纪元时间。
语法
strftime() 方法的语法如下所示。
date.strftime(format)
其中,format 用于指定输出所需的格式。
这里,我们想要将时间秒转换为 H: M:S 格式。因此,在这种情况下,格式代码为“%H:%M:%S”。
示例
以下是一个使用 .strftime() 方法将时间秒转换为 Python 中的 H:M:S 格式的示例代码。
import time seconds = 123455 time_obj = time.gmtime(seconds) resultant_time = time.strftime("%H:%M:%S",time_obj) print("Time in H M S format",resultant_time)
输出
以下是以上代码的输出。
Time in H M S format 10:17:35
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP