Python で今日の日付をタイムゾーン(時差)こみで取得する
時差(タイムゾーン)こみで時刻を取得するときは ZoneInfo を使う。
from datetime import datetime
from zoneinfo import ZoneInfo
# 日本時間(JST)で現在の日付時刻を取得
now_jst = datetime.now(ZoneInfo("Asia/Tokyo"))
print(f"日本時間: {now_jst}")
print(f"日付のみ: {now_jst.date()}")
# 日本時間: 2025-06-12 23:49:20.061634+09:00
# 日付のみ: 2025-06-12
# UTC時間
now_utc = datetime.now(ZoneInfo("UTC"))
print(f"UTC時間: {now_utc}")
# UTC時間: 2025-06-12 14:49:20.061777+00:00
# アメリカ東部時間
now_est = datetime.now(ZoneInfo("America/New_York"))
print(f"東部時間: {now_est}")
# 東部時間: 2025-06-12 10:49:20.062057-04:00
時間、分、秒などのフォーマットも指定できる。
from datetime import datetime
from zoneinfo import ZoneInfo
now_jst = datetime.now(ZoneInfo("Asia/Tokyo"))
print(f"標準形式: {now_jst}")
print(f"日付のみ: {now_jst.strftime('%Y-%m-%d')}")
print(f"時刻込み: {now_jst.strftime('%Y-%m-%d %H:%M:%S %Z')}")
print(f"日本語形式: {now_jst.strftime('%Y年%m月%d日 %H時%M分')}")
# 標準形式: 2025-06-12 23:51:28.282196+09:00
# 日付のみ: 2025-06-12
# 時刻込み: 2025-06-12 23:51:28 JST
# 日本語形式: 2025年06月12日 23時51分