Pythonによる日付の操作方法について – datetimeとtimedeltaの使い方

Pythonのdatetimeモジュールは、日付や時刻を操作するためのクラスを提供しています。

このモジュールを使用して、日付の計算やフォーマットを簡単に行うことができます。

from datetime import datetime, timedelta

# 現在の年月を取得
now = datetime.now()
this_month_str = now.strftime('%Y%m')

# 先月の年月を取得
last_month = now - timedelta(days=now.day)
last_month_str = last_month.strftime('%Y%m')

# 10週間前の年月を取得
ten_weeks_ago = now - timedelta(weeks=10)
ten_weeks_ago_str = ten_weeks_ago.strftime('%Y%m')

# 今月日付を取得
today_str = now.strftime('%Y%m%d')

print('今月:', this_month_str)
print('先月:', last_month_str)
print('10週間前:', ten_weeks_ago_str)
print('今日:', today_str)

出力結果

今月: 202303
先月: 202302
10週間前: 202301
今日: 20230316

datetimeモジュールから現在の日付を取得します。

ここでは、nowメソッドを使用して現在の日付と時刻をdatetimeオブジェクトとして取得します。

その後、strftimeメソッドを使用して、年月のみを表す文字列を生成します。

 

timedeltaモジュールは現在を軸に先月の日付や10週間前の日付を相対的に計算することができます。

timedeltaは、日付や時間の差分を表すオブジェクトです。

ここでは、daysやweeksを指定して、現在の日付から指定した期間だけ引いた日付を取得しています。