カテゴリ: Python 更新日: 2025/12/27

Pythonの日付・時刻の基本!datetimeモジュールの使い方を解説

Pythonの日付・時刻の基本!datetimeモジュールの使い方を解説
Pythonの日付・時刻の基本!datetimeモジュールの使い方を解説

先生と生徒の会話形式で理解しよう

生徒

「Pythonで日付や時刻を扱いたいんですが、どうしたらいいですか?」

先生

「Pythonにはdatetimeという専用のモジュールがあって、現在時刻を取得したり、日付の計算をしたり、とても便利に使えますよ。」

生徒

「具体的にどんなことができるんですか?難しくないですか?」

先生

「ゆっくり説明するので大丈夫。まずは現在時刻を取り出す基本から見ていきましょう!」

1. datetimeモジュールとは?

1. datetimeモジュールとは?
1. datetimeモジュールとは?

Pythonのdatetimeモジュールは、日付(年・月・日)や時刻(時・分・秒)を扱うための標準機能です。追加のインストールは不要で、すぐに使えるのが大きな特徴です。

たとえば、今日の日付を知りたいときや、一週間後の日付を計算したいとき、またはログに時間を記録したり、締め切り日までの残り日数を計算したりするときなど、日常のプログラミングで頻繁に使われます。

2. 現在の日付と時刻を取得する

2. 現在の日付と時刻を取得する
2. 現在の日付と時刻を取得する

datetimeモジュールの中にはdatetimeクラスというものがあり、これを使うことで「今この瞬間の日時」を取得できます。 コンピュータに「いま何時?」と聞くようなイメージです。


from datetime import datetime

now = datetime.now()
print(now)

上のコードを実行すると、以下のように現在の日時が表示されます。


2025-12-09 03:12:45.123456

このように、年・月・日・時・分・秒までまとめて取得できます。

3. 年・月・日・時刻を個別に取り出す

3. 年・月・日・時刻を個別に取り出す
3. 年・月・日・時刻を個別に取り出す

取得した日時から、年だけ、月だけ、というように個別の値を取り出すこともできます。 datetimeオブジェクトは「箱の中にいろいろな情報が入っている」イメージで、その箱から必要なものを取り出します。


from datetime import datetime

now = datetime.now()
print(now.year)
print(now.month)
print(now.day)
print(now.hour)
print(now.minute)
print(now.second)

4. 日付を指定して作成する

4. 日付を指定して作成する
4. 日付を指定して作成する

自分で好きな日付・時刻を作ることもできます。例えば「2025年1月1日0時0分」を表す日時を作りたいときなどです。 これはイベントの日付や締め切り日時を設定するときによく使います。


from datetime import datetime

new_date = datetime(2025, 1, 1, 0, 0, 0)
print(new_date)

5. 日付の足し算・引き算(timedelta)

5. 日付の足し算・引き算(timedelta)
5. 日付の足し算・引き算(timedelta)

日付の計算にはtimedeltaを使います。これは「何日後」や「何時間前」といった時間の差を表すための機能です。 カレンダーで日付を一つ進めるようなイメージです。


from datetime import datetime, timedelta

today = datetime.now()
one_week_later = today + timedelta(days=7)
print(one_week_later)

これで「今日から7日後」を簡単に求められます。

6. 日時を文字列に変換する(strftime)

6. 日時を文字列に変換する(strftime)
6. 日時を文字列に変換する(strftime)

日付を画面にきれいな形で表示したいときや、ファイル名に日付を入れたいときには、日時を文字列に変換します。 これはstrftimeというメソッドで行います。


from datetime import datetime

now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S"))

%Yは年、%mは月、%dは日を意味します。パターンを組み合わせて自由に形式を作れます。

7. 文字列から日時を作る(strptime)

7. 文字列から日時を作る(strptime)
7. 文字列から日時を作る(strptime)

外部データや入力フォームから「2025-12-01」のような文字列が渡されることがあります。 それをdatetimeとして扱うにはstrptimeを使います。


from datetime import datetime

date_str = "2025-12-01"
date_obj = datetime.strptime(date_str, "%Y-%m-%d")
print(date_obj)

8. 日付の比較をしてみる

8. 日付の比較をしてみる
8. 日付の比較をしてみる

datetime同士は大きい・小さいの比較が可能です。 例えば「締め切りを過ぎているかどうか」を判定できます。


from datetime import datetime

deadline = datetime(2025, 12, 31)
now = datetime.now()

if now > deadline:
    print("締め切りを過ぎています。")
else:
    print("まだ間に合います。")
カテゴリの一覧へ
新着記事
New1
Flask
Flask×Flask-SocketIOでチャットアプリを作る流れを初心者向けにやさしく解説
New2
Flask
Flaskアプリの作り方を基礎から学ぼう!初心者が覚えるべき開発の流れとは?
New3
Flask
Flask-WTFでファイルアップロードフォームを完全ガイド!初心者でもわかる画像やPDFのアップロード方法
New4
Flask
FlaskでCSRF対策を実装する方法!安全なフォーム送信を学ぼう
人気記事
No.1
Java&Spring記事人気No1
Django
Django環境構築の全手順を完全解説!初心者でも迷わないPython・Djangoセットアップガイド
No.2
Java&Spring記事人気No2
Flask
Flask-Loginでユーザー認証を完全ガイド!初心者でもわかるログイン処理の作り方
No.3
Java&Spring記事人気No3
Python
Pythonの文字列を1文字ずつ処理する方法!for文やlist化の活用例
No.4
Java&Spring記事人気No4
Python
PythonでHello Worldを表示するには?初心者向けに最初の1行を実行してみよう
No.5
Java&Spring記事人気No5
Flask
FlaskアプリをNginx + Gunicornで本番運用する方法!初心者でもわかるデプロイ構成の基本
No.6
Java&Spring記事人気No6
Python
Pythonでリストを文字列に変換する方法を完全ガイド!初心者でもわかるjoinの使い方
No.7
Java&Spring記事人気No7
Python
Pythonで定数を定義する方法!変更されない変数の書き方と命名ルールを初心者向けに解説
No.8
Java&Spring記事人気No8
Flask
FlaskアプリのSECRET_KEYの設定方法を完全ガイド!初心者でもわかるセキュリティ対策