12月の月にエラーが発生しました。月の最後の日をPythonで取得する
ValueError: month must be in 1..12
def last_day_of_month(ds):
cur_ds = datetime.strptime(ds, '%Y-%m-%d')
next_month = datetime(year=cur_ds.year, month=cur_ds.month+1, day=1)
last_day_month = next_month - timedelta(days=1)
return datetime.strftime(last_day_month, '%Y-%m-%d')
print last_day_of_month('2016-12-01')
明らかに、月が12月の場合、 'month = cur_ds.month + 1'は13になるでしょうか?そして、間違いが言うように、明らかに13は許容される月ではありませんか? –
はい、条件を使用する以外にも処理できる方法はありますか – paddu
あなたは '%12'を使うことができますか? –