🐍 Python
datetime.now() / date.today() で現在日時を取得する
現在の日時をまるごと取得したいときはdatetime.now()、日付だけでよいときはdate.today()を使います。実行するたびに結果が変わる関数なので、コード例では型や分解結果を中心に確認します。
datetime.now() # 現在の日時(datetime型)
date.today() # 現在の日付(date型、時刻を持たない)
from datetime import datetime, date
now = datetime.now()
print(type(now))
#
today = date.today()
print(type(today))
#
# datetimeオブジェクトはdate()とtime()で分解できる
from datetime import datetime
fixed_now = datetime(2026, 8, 10, 15, 30, 45)
print(fixed_now)
# 2026-08-10 15:30:45
print(fixed_now.date())
# 2026-08-10
print(fixed_now.time())
# 15:30:45
# yearなど個別の属性にもアクセスできる
from datetime import datetime
now = datetime.now()
print(now.year >= 2024)
# True(このコードを実行した年が2024年以降なら)
now()とtoday()の違い
datetime.now()- 現在の年月日と時分秒(マイクロ秒まで)を持つ
datetimeオブジェクトを返す date.today()- 時刻を持たない
dateオブジェクトを返す。「今日が何月何日か」だけが必要なときに使う
💡 AIコードレビュー観点:now()はタイムゾーン情報を持たない(naive)
datetime.now()が返す値はローカルのシステム時刻に基づいた「naive」な日時で、タイムゾーン情報を持ちません。サーバーの実行環境と利用者のタイムゾーンが異なる場合、意図しない時刻表示になることがあります。国際化を意識するならdatetime.now(timezone.utc)のようにタイムゾーンを明示しましょう。詳しくはタイムゾーンのページで解説しています。
← Python datetime クイックリファレンス一覧へ戻る / timestamp/fromtimestampでUNIX時刻と変換する →