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を指定して、現在の日付から指定した期間だけ引いた日付を取得しています。