首頁 >後端開發 >Python教學 >如何準確地將 Python `datetime.date` 和 `datetime.datetime` 物件轉換為 UTC 時間戳記?

如何準確地將 Python `datetime.date` 和 `datetime.datetime` 物件轉換為 UTC 時間戳記?

Patricia Arquette
Patricia Arquette原創
2024-12-19 22:53:10535瀏覽

How to Accurately Convert Python `datetime.date` and `datetime.datetime` Objects to UTC Timestamps?

在Python 中將datetime.date 轉換為UTC 時間戳

在Python 中處理日期時,需要將它們轉換為UTC 時間戳各種應用程式。但是,使用 datetime.datetime.utcfromtimestamp(time.mktime(d)) 等傳統方法可能會導致不正確的結果。

將UTC 日期轉換為自紀元以來的秒數

對於以UTC 表示的日期d,將其轉換為自紀元以來的秒數的正確公式是:

此方法確保產生的時間戳代表UTC 格式的日期。

將本地時間日期轉換為自紀元以來的秒數

如果日期 d 位於本地時區,則使用 mktime() 可能會產生不正確的結果。為了解決這個問題,我們可以使用:

但是,請注意,如果本地午夜與 UTC 午夜不同,timestamp1 和 timestamp2 可能會有所不同。

在UTC 中轉換datetime.date不使用calendar.timegm()

將datetime.date 物件直接轉換為UTC時間戳,您可以使用以下公式:

將UTC 格式的datetime.datetime 轉換為 POSIX 時間戳

對於已經採用 UTC 格式的 datetime.datetime 對象,可以使用以下方法:

  • Python 3.3提供datetime.timestamp():
  • Python 3 (
    Pyt 2:

將Aware datetime 物件轉換為POSIX 時間戳記

對於aware datetime 物件(有時區資訊的日期時間),以下方法是建議:

以上是如何準確地將 Python `datetime.date` 和 `datetime.datetime` 物件轉換為 UTC 時間戳記?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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