如何在 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

更新於: 2022-09-08

7K+ 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告