从日期列表开始:DAYS=['Sunday', 'Monday', ..., 'Saturday']
可以使用列表的index方法查找指定日期的数组索引位置:
^{pr2}$
再加上从现在开始的天数,您将在“天数”列表中的该索引位置获得该日期:>>> todays_index=DAYS.index('Sunday')
>>> days_from_now=3
>>> print DAYS[todays_index+days_from_now]
Wednesday
不过,从周日开始,这项工作将持续6天。将days\u从now设置为7显然会破坏程序并导致索引错误。但是,如果从现在开始计算7天的模量,则可以确保永远不会超过6:# DAYS[0] == 'Sunday'
# 7 days from now: DAYS[0+(7%7)] == DAYS[0+0] == DAYS[0] == 'Sunday'
# 8 days from now: DAYS[0+(8%7)] == DAYS[0+1] == DAYS[1] == 'Monday'
# 14 days from now: DAYS[0+(14%7)] == DAYS[0+0] == DAYS[0] == 'Saturday'
# DAYS[1] == 'Monday'
# 14 days from now: DAYS[1+(14%7)] == DAYS[1+0] == DAYS[1] == 'Monday'
# 17 days from now: DAYS[1+(17%7)] == DAYS[1+3] == DAYS[4] == 'Thursday'
结果函数如下所示:def day_add(day, days_from_now):
DAYS=['Sunday', 'Monday', ..., 'Saturday']
if days_from_now == 0:
return day
else:
todays_index = DAYS.index(day)
return DAYS[todays_index+(days_from_now%7)]