Creating a range of dates in Python

后端 未结 20 2492
栀梦
栀梦 2020-11-22 11:02

I want to create a list of dates, starting with today, and going back an arbitrary number of days, say, in my example 100 days. Is there a better way to do it than this?

20条回答
  •  佛祖请我去吃肉
    2020-11-22 11:43

    From above answers i created this example for date generator

    import datetime
    date = datetime.datetime.now()
    time = date.time()
    def date_generator(date, delta):
      counter =0
      date = date - datetime.timedelta(days=delta)
      while counter <= delta:
        yield date
        date = date + datetime.timedelta(days=1)
        counter +=1
    
    for date in date_generator(date, 30):
       if date.date() != datetime.datetime.now().date():
         start_date = datetime.datetime.combine(date, datetime.time())
         end_date = datetime.datetime.combine(date, datetime.time.max)
       else:
         start_date = datetime.datetime.combine(date, datetime.time())
         end_date = datetime.datetime.combine(date, time)
       print('start_date---->',start_date,'end_date---->',end_date)
    

提交回复
热议问题