I want all the dates of the present week based on weeknumber.
I can get week number like
import datetime
weeknum=datetime.datetime.now().isocalendar()[1]
result is 20.
wanted all dates of week 20.
the final output should be
dates=['2019-05-12','2019-05-13','2019-05-14','2019-05-15','2019-05-16','2019-05-17','2019-05-18']
please help me.
解决方案
You can do it with time and datetime as well as this answer suggest but change it to your requirements:
WEEK = 20 - 2 # as it starts with 0 and you want week to start from sunday
startdate = time.asctime(time.strptime('2019 %d 0' % WEEK, '%Y %W %w'))
startdate = datetime.datetime.strptime(startdate, '%a %b %d %H:%M:%S %Y')
dates = [startdate.strftime('%Y-%m-%d')]
for i in range(1, 7):
day = startdate + datetime.timedelta(days=i)
dates.append(day.strftime('%Y-%m-%d'))
Output as following:
dates = ['2019-05-12',
'2019-05-13',
'2019-05-14',
'2019-05-15',
'2019-05-16',
'2019-05-17',
'2019-05-18']