我正在为我的大学的时间表网站构建API。默认选项是查询今天的时间表。但是,时间表系统使用的星期编号与我们通常使用的编号不同。
构建URL所需的两件事之一是星期几。
TIMETABLE_URL = 'http://timetable.ait.ie/reporting/textspreadsheet;student+set;id;{}?t=student+set+textspreadsheet&days=1-5&=&periods=3-20&=student+set+textspreadsheet&weeks={}&template=student+set+textspreadsheet'
每周编号应从此日期开始:27 Aug 2018 - 2 Sep 2018
。之后,week 2
将是3 Sep 2018-9 Sep 2018
,依此类推。这应该是新年,31 Dec 2018-6 Jan 2019
的日期应为week 19
。这“一年”总共有52周。
我知道如何检查某个日期是否在上述范围之一内,但是我想避免手动设置所有日期范围。例如,我怎么能知道某个脚本是在9月12日的第3周?
答案 0 :(得分:1)
使用datetime.datetime
对象:
from datetime import datetime
start = datetime.strptime('20180827', '%Y%m%d')
current = datetime.strptime('20180912', '%Y%m%d')
print((current - start).days//7 +1) # The week number
# Output: 3
这也可以处理不同的年份。请注意,这仅在开始日期为星期一时有效。