首頁  >  文章  >  後端開發  >  如何將 Python 日期時間物件轉換為自特定日期以來經過的秒數?

如何將 Python 日期時間物件轉換為自特定日期以來經過的秒數?

DDD
DDD原創
2024-10-26 22:27:03200瀏覽

How to Convert Python datetime Objects to Seconds Elapsed Since a Specific Date?

在Python 中將日期時間物件轉換為秒

在Python 中,計算給定日期時間物件自過去固定時間以來經過的秒數是一個常見的要求。為了準確地確定此持續時間,可以採用幾種不同的方法。

特殊情況:1970 年1 月1 日

對於表示1970 年1 月1 日的日期時間對象,有以下是可用於轉換為秒的替代方法:

  • t.timestamp():以浮點格式傳回自紀元(1970 年1 月1 日)以來的秒數。
  • (t - datetime(1970, 1, 1)).total_seconds():計算給定日期時間對象和紀元之間的差異作為 timedelta 對象,並將其轉換為秒。

一般情況:任何開始日期

對於1970 年1 月1 日以外的開始日期,需要執行以下步驟:

  1. 取得給定日期時間物件之間的差異以及所需的開始日期。這會產生一個 timedelta 物件。
  2. 使用 timedelta 物件的total_seconds() 方法將其轉換為秒數。

下面是一個範例:

import datetime
t = datetime.datetime(2009, 10, 21, 0, 0)
start_date = datetime.datetime(1985, 1, 1, 0, 0)
seconds_elapsed = (t - start_date).total_seconds()

UTC 注意事項

執行這些操作時,請確保開始日期和給定日期時間對象採用UTC(協調世界時)非常重要。如果不是,轉換可能不準確。如有必要,請使用 tzinfo 屬性將日期時間物件轉換為 UTC。

以上是如何將 Python 日期時間物件轉換為自特定日期以來經過的秒數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn