處理日期時間對象和時間戳是編程中的一項常見任務,尤其是在處理 time-sensitive 數據時。使用不同時區時,通常需要將日期時間對象轉換為 UTC 時間戳。在Python 中,有多種方法可以實現這一點。在本文中,我們將探討將 DateTime 轉換為 UTC 時間戳的四種不同方法。
在 Python 中將日期時間轉換為 UTC 時間戳
以下是將日期時間轉換為 UTC 時間戳的方法Python.
- 使用
datetime.timestamp()
- 使用
calendar.timegm()
- 使用
pytz
Library U
唱歌time.mktime()
使用以下命令將日期時間轉換為 UTC 時間戳datetime.timestamp()
在此示例中,DateTime
下麵的代碼創建一個日期時間對象`dt`,表示 2024 年 1 月 25 日中午 12:00。然後,它使用“replace()”方法將時區設置為 UTC,並使用“timestamp()”方法獲取 POSIX 時間戳,將此日期時間對象轉換為 UTC 時間戳。
Python3
from datetime import datetime, timezone
# Create a datetime object
dt = datetime(2024, 1, 25, 12, 0, 0)
# Convert to UTC timestamp using timestamp() method
timestamp_utc = dt.replace(tzinfo=timezone.utc).timestamp()
print("Datetime:",dt)
print("UTC Timestamp:", timestamp_utc)
輸出:
Datetime: 2024-01-25 12:00:00
UTC Timestamp: 1706184000.0
使用以下命令將日期時間轉換為 UTC 時間戳calendar.timegm()
在此示例中,下麵的代碼利用 `calendar` 模塊和 `timegm()` 函數將日期時間對象 `dt`(表示 2024 年 1 月 25 日中午 12:00)轉換為 UTC 時間戳。它使用“utctimetuple()”從日期時間對象中提取 UTC 時間元組,然後使用“timegm()”計算 UTC 時間戳。
Python3
import calendar
from datetime import datetime
# Create a datetime object
dt = datetime(2024, 1, 25, 12, 0, 0)
# Convert to UTC timestamp using timegm() function
timestamp_utc = calendar.timegm(dt.utctimetuple())
print("Datetime:", dt)
print("UTC Timestamp:", timestamp_utc)
輸出:
Datetime: 2024-01-25 12:00:00
UTC Timestamp: 1706184000
使用以下命令將日期時間轉換為 UTC 時間戳pytz
Library
在此示例中,以下代碼使用 `pytz` 庫將日期時間對象 `dt`(表示 2024 年 1 月 25 日中午 12:00)轉換為 UTC 時間戳。它首先使用“pytz.utc.localize()”將日期時間對象本地化為 UTC 時區。然後,它通過使用`timestamp()`方法轉換本地化的日期時間對象來獲取UTC時間戳。
Python3
import pytz
from datetime import datetime
# Create a datetime object
dt = datetime(2024, 1, 25, 12, 0, 0)
# Set the timezone to UTC
dt_utc = pytz.utc.localize(dt)
# Convert to UTC timestamp
timestamp_utc = int(dt_utc.timestamp())
print("Datetime:", dt)
print("UTC Timestamp:", timestamp_utc)
輸出:
Datetime: 2024-01-25 12:00:00
UTC Timestamp: 1706184000
Convert A Datetime To A Utc Timestamp U
唱time.mktime()
在此示例中,以下代碼創建 2024 年 1 月 25 日中午 12:00 的日期時間對象,然後使用“time.mktime”函數將其轉換為 UTC 時間戳。打印原始日期時間及其相應的 UTC 時間戳。此方法假設日期時間對象位於 UTC 時區,或者在應用“mktime()”之前不需要時區調整。
Python3
import time
from datetime import datetime
# Create a datetime object
dt = datetime(2024, 1, 25, 12, 0, 0)
# Convert to UTC timestamp using time.mktime
timestamp_utc = int(time.mktime(dt.timetuple()))
print("Datetime:", dt)
print("UTC Timestamp:", timestamp_utc)
輸出:
Datetime: 2024-01-25 12:00:00
UTC Timestamp: 1706184000
結論
總之,Python 提供了多種將日期時間對象轉換為 UTC 時間戳的方法,以滿足不同的偏好和用例。是否利用內置函數,例如timestamp()
或者time.mktime
,使用像這樣的庫pytz
或者arrow
,甚至依靠手動數學運算,開發人員可以選擇最適合其編碼風格和項目要求的方法。
相關用法
- Python Datetime.replace()用法及代碼示例
- Python Datetime today方法用法及代碼示例
- Python Datetime Time構造函數用法及代碼示例
- Python Datetime utcnow方法用法及代碼示例
- Python Datetime Date構造函數用法及代碼示例
- Python Datetime Timedelta構造函數用法及代碼示例
- Python Datetime fromtimestamp方法用法及代碼示例
- Python Datetime strptime方法用法及代碼示例
- Python Datetime strftime方法用法及代碼示例
- Python Datetime Datetime構造函數用法及代碼示例
- Python Datetime now方法用法及代碼示例
- Python Datetime utcfromtimestamp方法用法及代碼示例
- Python Datetime fromisoformat方法用法及代碼示例
- Python DateTime weekday()用法及代碼示例
- Python DateTime astimezone()用法及代碼示例
- Python DateTime轉integer用法及代碼示例
- Python Date轉Datetime用法及代碼示例
- Python DateTime轉UNIX Timestamp用法及代碼示例
- Python DataFrame.read_pickle()用法及代碼示例
- Python DataFrame.to_excel()用法及代碼示例
- Python Dictionary clear()用法及代碼示例
- Python Dictionary copy()用法及代碼示例
- Python Dictionary fromkeys()用法及代碼示例
- Python Dictionary get()用法及代碼示例
- Python Dictionary items()用法及代碼示例
注:本文由純淨天空篩選整理自kokaneit92大神的英文原創作品 Convert Datetime to UTC Timestamp in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。