Iterating through a range of dates in Python

后端 未结 23 1585
醉酒成梦
醉酒成梦 2020-11-22 04:40

I have the following code to do this, but how can I do it better? Right now I think it\'s better than nested loops, but it starts to get Perl-one-linerish when you have a ge

23条回答
  •  南方客
    南方客 (楼主)
    2020-11-22 05:01

    > pip install DateTimeRange
    
    from datetimerange import DateTimeRange
    
    def dateRange(start, end, step):
            rangeList = []
            time_range = DateTimeRange(start, end)
            for value in time_range.range(datetime.timedelta(days=step)):
                rangeList.append(value.strftime('%m/%d/%Y'))
            return rangeList
    
        dateRange("2018-09-07", "2018-12-25", 7)  
    
        Out[92]: 
        ['09/07/2018',
         '09/14/2018',
         '09/21/2018',
         '09/28/2018',
         '10/05/2018',
         '10/12/2018',
         '10/19/2018',
         '10/26/2018',
         '11/02/2018',
         '11/09/2018',
         '11/16/2018',
         '11/23/2018',
         '11/30/2018',
         '12/07/2018',
         '12/14/2018',
         '12/21/2018']
    

提交回复
热议问题