Reputation:
I know current year and current week,for example current year is 2018,current week is 8.
I want to know which year and week is it 10 weeks ago,10 weeks ago is the fiftieth week of 2017.
currentYear=2018
currentWeek=8
How to get it?
Upvotes: 1
Views: 94
Reputation: 33
after importing module import date
import time
from datetime import date
currentYear=datetime.strptime("2018-8-1", "%Y-%W-%w")
representing year and week and need a random weekday day added
Upvotes: 0
Reputation: 71560
Best way,
Without knowing the date of 8th week of 2018,
Just creating date from week and year
here it is:
import datetime
d = "%s-W%s"%(currentYear,currentWeek)
r = datetime.datetime.strptime(d + '-0', "%Y-W%W-%w")
print(r-datetime.timedelta(weeks=10))
Output:
2017-12-17 00:00:00
Or if want in week format:
print((r-datetime.timedelta(weeks=10)).strftime('%V'))
Output:
50
Upvotes: 0
Reputation: 538
In [31]: from datetime import datetime as dt
In [32]: from datetime import timedelta
In [33]: current_date = dt(2018, 2, 20)
In [34]: current_date
Out[34]: datetime.datetime(2018, 2, 20, 0, 0)
In [35]: current_date.strftime('%V') <-- This is how we can get week of year.
Out[35]: '08'
In [36]: current_date - timedelta(weeks=10) <-- How to go back in time.
Out[36]: datetime.datetime(2017, 12, 12, 0, 0)
In [37]: ten_weeks_ago = _
In [38]: ten_weeks_ago.strftime('%V')
Out[38]: '50'
Upvotes: 1