Photo by Roman Bozhko on Unsplash
指定した日付に指定した日数を加算(減算)した日付を求める関数を作成したので公開。
関数名:add_days
引数1:起点となる日付(yyyy/mm/dd形式、「/」スラッシュは指定した区切り文字)
引数2:日数(減算の場合はマイナスで指定)
引数3:区切り文字(デフォルトは「/」スラッシュ)
戻り値:日付(yyyy/mm/dd形式、「/」スラッシュは指定した区切り文字)
引数1で指定した日付に引数2で指定した日数を加算(マイナスの場合は減算)した結果の日付を求める。
日付は引数3で指定した区切り文字で区切った日付の文字列として戻される。
■ソースコード
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def add_days(fromdate, days, delimiter='/'): | |
from datetime import datetime | |
import datetime as dt | |
from datetime import timedelta | |
# 年月日の分割(from) | |
fy = int(fromdate.split(delimiter)[0]) | |
fm = int(fromdate.split(delimiter)[1]) | |
fd = int(fromdate.split(delimiter)[2]) | |
# days で指定した日数を加算した日付を求める | |
d = dt.date(fy, fm, fd) + timedelta(days) | |
# 日付を文字列に変換し、指定した区切り文字で区切る。 | |
todate = d.strftime("%Y") + delimiter + d.strftime("%m") + delimiter + d.strftime("%d") | |
return todate |
【関連記事】