Pythonで日時を扱う方法:基本的な操作を詳しく解説

Pythonでの日時の扱い方について

Pythonは日時の扱いに優れたモジュールがあります。datetimeモジュールを使うことで、日付や時間を簡単に扱うことができます。この記事では、datetimeモジュールの基本的な使い方から、日付の生成やフォーマット指定、現在の日時の取得方法、日時の算出や比較方法までを詳しく解説します。

datetimeモジュールの基本的な使い方

datetimeモジュールを使うには、まずはモジュールをインポートする必要があります。以下のように、datetimeモジュールをインポートします。

import datetime

これで、datetimeモジュールの機能を使うことができます。

日付の生成とフォーマット指定について

datetimeモジュールを使って、日付を生成することができます。日付の生成には、datetime.date()関数を使います。以下は、2022年1月1日を生成する例です。

date = datetime.date(2022, 1, 1)
print(date)

実行結果は、以下のようになります。

2022-01-01

また、日付のフォーマットを指定することもできます。strftime()関数を使うことで、指定したフォーマットに従って日付を文字列に変換することができます。以下は、日付を「年-月-日」の形式に変換する例です。

formatted_date = date.strftime('%Y-%m-%d')
print(formatted_date)

実行結果は、以下のようになります。

2022-01-01

現在の日時の取得方法

datetimeモジュールを使って、現在の日時を取得することができます。現在の日時の取得には、datetime.datetime.now()関数を使います。以下は、現在の日時を取得する例です。

now = datetime.datetime.now()
print(now)

実行結果は、以下のようになります。

2023-11-13 12:34:56.789012

日時の算出と計算方法

datetimeモジュールを使って、日時の算出や計算をすることができます。日時の算出には、datetime.timedelta()関数を使います。以下は、1日後の日付を算出する例です。

delta = datetime.timedelta(days=1)
tomorrow = now + delta
print(tomorrow)

実行結果は、以下のようになります。

2022-02-14 12:34:56.789012

また、日時の差分を計算することもできます。以下は、2つの日時の差分を計算する例です。

date1 = datetime.datetime(2022, 1, 1)
date2 = datetime.datetime(2022, 2, 1)
delta = date2 - date1
print(delta.days)

実行結果は、31になります。

日時の比較方法

datetimeモジュールを使って、日時の比較をすることができます。以下は、2つの日時を比較する例です。

date1 = datetime.datetime(2022, 1, 1)
date2 = datetime.datetime(2022, 2, 1)
if date1 < date2:
    print('date1 is earlier than date2')

実行結果は、以下のようになります。

date1 is earlier than date2

まとめ

この記事では、Pythonで日時を扱う方法について詳しく解説しました。datetimeモジュールを使うことで、日付や時間を簡単に扱うことができます。日付の生成やフォーマット指定、現在の日時の取得方法、日時の算出や比較方法など、基本的な操作について学びました。Pythonで日時を扱う際には、この記事を参考にしてください。