Pythonで現在時刻を取得する方法まとめ【初心者向け解説】

この記事は約4分で読めます。
スポンサーリンク

Pythonで「現在時刻を取得する方法」について、初心者でもわかりやすく解説します。この記事では、代表的な方法やコード例、用途別の使い分け、よくある疑問まで網羅的に紹介します。

Pythonで現在時刻を取得する主な方法

Pythonで現在時刻を取得するには、主に以下の2つの標準ライブラリを使います。

  • datetimeモジュール:日時の取得・操作・フォーマットに強い
  • timeモジュール:UNIX時間(エポック秒)やシンプルな時刻取得に便利

用途に応じて使い分けましょう。

datetimeモジュールでの現在時刻取得と活用例

基本の書き方

from datetime import datetime

now = datetime.now()
print(now)  # 例: 2025-06-23 10:06:00.123456

この方法で「年-月-日 時:分:秒.マイクロ秒」まで取得できます。

年・月・日・時・分・秒だけを取り出す

print(now.year)   # 年
print(now.month)  # 月
print(now.day)    # 日
print(now.hour)   # 時
print(now.minute) # 分
print(now.second) # 秒

必要な情報だけを個別に取得できます。

日付・時刻だけを取得

print(now.date())  # 日付のみ(例: 2025-06-23)
print(now.time())  # 時刻のみ(例: 10:06:00.123456)

timeモジュールによる現在時刻の取得

UNIX時間(エポック秒)やOSに近い時刻取得にはtimeモジュールを使います。

import time

local_time = time.localtime()
formatted = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print(formatted)  # 例: 2025-06-23 10:06:00

time.time()でエポック秒も取得可能です。

現在時刻のフォーマット変換(strftimeの使い方)

strftime()メソッドを使うと、好きな形式で時刻を表示できます。

from datetime import datetime

now = datetime.now()
print(now.strftime("%Y年%m月%d日 %H:%M:%S"))  # 例: 2025年06月23日 10:06:00

よく使うフォーマット指定子

指定子意味
%Y西暦4桁2025
%m月(01〜12)06
%d日(01〜31)23
%H時(24H)10
%M06
%S00

タイムゾーンやUTC時刻の取得

UTC(協定世界時)の取得

from datetime import datetime, timezone

utc_now = datetime.now(timezone.utc)
print(utc_now)  # 例: 2025-06-23 01:06:00+00:00

日本時間(JST)などタイムゾーン指定

pytzモジュールを使うと、任意のタイムゾーンで現在時刻を取得できます。

from datetime import datetime
import pytz

jst = pytz.timezone('Asia/Tokyo')
jst_now = datetime.now(jst)
print(jst_now.strftime("%Y-%m-%d %H:%M:%S"))

※ pytzは別途インストールが必要です(pip install pytz)。

その他、注意点

  • ミリ秒・マイクロ秒まで表示したい場合
    .strftime("%Y-%m-%d %H:%M:%S.%f")でマイクロ秒まで取得できます。
  • ISO 8601形式で出力したい場合
    .isoformat()を使います(例: 2025-06-23T10:06:00.123456)。
  • 一定時間ごとに現在時刻を表示したい場合
    ループ+time.sleep()で定期的に表示可能です。

まとめ

Pythonで現在時刻を取得するには、datetimeモジュールのnow()が最も一般的で、フォーマット変換やタイムゾーン対応も柔軟です。用途や表示形式に応じてtimeモジュールやpytzも活用しましょう

コメント

タイトルとURLをコピーしました