しょっちゅう忘れることを書いておく。
![]() |
66 |
586 views
基本的な考え方は、月始めから1日引き算するだけ。
# coding:UTF-8
from datetime import datetime, timedelta
def create_date_list(start_year):
date_pairs = []
end_year = datetime.today().year
end_month = datetime.today().month
end_date = datetime.today().day
end_datetime = datetime(end_year, end_month, end_date)
for year in range(start_year, end_year + 1, 1):
for month in range(1, 13, 1):
this_datetime = datetime(year, month, 1)
if this_datetime > end_datetime:
continue
start_date = datetime(year, month, 1)
# 月末日を求める
next_month = month + 1
if next_month > 12:
year += 1
next_month = 1
middle_date = datetime(year, next_month, 1) - timedelta(days=1)
date_pair = [
[
['start_year', str(start_date.year)],
['start_month', "{:02}".format(start_date.month)],
['start_day', "{:02}".format(start_date.day)],
],
[
['end_year', str(middle_date.year)],
['end_month', "{:02}".format(middle_date.month)],
['end_day', "{:02}".format(middle_date.day)],
]
]
date_pairs.append(date_pair)
return date_pairs
if __name__ == '__main__':
results = create_date_list(2021)
for result in results:
print(result)
Page 8 of 69.
すぺぺぺ
本サイトの作成者。
プログラムは趣味と勉強を兼ねて、のんびり本サイトを作っています。
フレームワークはdjango。
ChatGPTで自動プログラム作成に取り組み中。
https://www.osumoi-stdio.com/novel/