Python - 将时间段拆分为多个固定长度的时间段

给定两个日期,我想使用datetime生成一个具有固定时间长度的日期列表,从较晚的日期开始。例如,给定01/01/201801/09/20182 个月的时间间隔,输出将是:

[01/01/2018, 01/03/2018, 01/05/2018, 01/07/2018, 01/09/2018]

间隔3个月:

[01/03/2018, 01/06/2018, 01/09/2018]

我不能只使用datetime对象.replace上的方法减去月数,因为从 31 天月到 30 天月会返回错误。


拉莫斯之舞
浏览 448回答 2
2回答

慕丝7291255

我认为relativedeleta模块可以帮助你 -pip install python-dateutilfrom dateutil.relativedelta import *import datetimedate1 = datetime.datetime.strptime('01/01/2018', "%d/%m/%Y").date()date2 = datetime.datetime.strptime('01/09/2018', "%d/%m/%Y").date()f = [(date1 + relativedelta(months=i)).strftime("%d/%m/%Y") for i in range(date1.month, date2.month,2)]结果将是 - ['01/02/2018', '01/04/2018', '01/06/2018', '01/08/2018']
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python