私は2つの日付間の月のリストを生成しようとしています。例については :「ここに与えられた2つの日付間のすべての月を表示するにはどうすればいいですか?
[datetime.date(2016, 1, 31),
datetime.date(2016, 2, 28),
datetime.date(2016, 3, 27),
datetime.date(2016, 4, 24),
datetime.date(2016, 5, 22),
datetime.date(2016, 6, 19),
datetime.date(2016, 7, 17),
datetime.date(2016, 8, 14),
datetime.date(2016, 9, 11),
datetime.date(2016, 10, 9),
datetime.date(2016, 11, 6),
datetime.date(2016, 12, 4),
datetime.date(2017, 1, 1),
datetime.date(2017, 1, 29),
datetime.date(2017, 2, 26),
datetime.date(2017, 3, 26)]
2016:私は
このようなstartDate = '2016-1-28'
endDate = '2017-3-26'
start = date(*map(int, startDate.split('-')))
end = date(*map(int, endDate.split('-')))
week = start
dateData = []
while week <= end:
dateData.append(week)
week = week + datetime.timedelta(weeks=4)
pprint(dateData)
をしようとしています
datetime.date(2016, 1, 31)
datetime.date(2016, 2, 28)
and so on....
これは、その結果得られます。
startDate = '2016-1-31'
endDate = '2017-3-26'
それはとなるはずです、12 "& "2017、1"は2回繰り返されます。誰も私がこの問題を解決するのを助けることができます。
ライブラリdateutilからrelativedeltaを試みることができる、それは数ヶ月の計算をサポートしてい – thangtn
はい、私はdateutil輸入relativedeltaからやったと(ヶ月= 1)relativedeltaを使用。しかし、これは誤りです。 – nas
「dateutil.relativedelta import relativedelta」から試しましたか? – thangtn