给定python中的星期数和年份,如何获取星期的开始日期和结束日期?
我已经试过了:
def get_start_end_dates(year, week):
dlt = timedelta(days = (week - 1) * 7)
d = date(year, 1, 1)
return d + dlt, d + dlt + timedelta(days=6)
Run Code Online (Sandbox Code Playgroud)
但是,通过此功能,我假设一年的第一周从星期一开始。
小智 4
我已经修复了你的功能:
def get_start_end_dates(year, week):
d = date(year,1,1)
if(d.weekday()<= 3):
d = d - timedelta(d.weekday())
else:
d = d + timedelta(7-d.weekday())
dlt = timedelta(days = (week-1)*7)
return d + dlt, d + dlt + timedelta(days=6)
Run Code Online (Sandbox Code Playgroud)
它获得给定年份中正确的一周开始和结束日期。
它还假设一年中第一天为周五、周六或周日的年份下周为 1 周。请参阅此处: http: //en.wikipedia.org/wiki/Week