Python: get all months in range?

后端 未结 9 1194
天涯浪人
天涯浪人 2020-12-15 18:00

I want to get all months between now and August 2010, as a list formatted like this:

[\'2010-08-01\', \'2010-09-01\', .... , \'2016-02-01\']
<
9条回答
  •  星月不相逢
    2020-12-15 18:33

    dateutil.relativedelta is handy here.

    I've left the formatting out as an exercise.

    from dateutil.relativedelta import relativedelta
    import datetime
    
    result = []
    
    today = datetime.date.today()
    current = datetime.date(2010, 8, 1)    
    
    while current <= today:
        result.append(current)
        current += relativedelta(months=1)
    

提交回复
热议问题