以与isocalendar不同的方式获取日历周

时间:2015-09-18 06:25:43

标签: python python-2.7 datetime calendar week-number

我遇到以下问题: 我有一个函数,它遍历一个日期列表,这些日期都是工作日。对于每个auf这些日期我需要获得周数。所以这看起来像是:

last_day = datetime.date(2016, 2, 1)
current_workday = datetime.now().date()
datelist = []

while current_workday < last_day:
    datelist.append(current_workday)
    current_workday = workdays.workday(current_workday, 1) //get the next workday

for day in datelist:
    week = datetime.date(day).isocalendar()[1]
    print week

然而,我的老板不再幸运了多年之间发生的事情。 “问题”指向本页末尾http://www.staff.science.uu.nl/~gent0113/calendar/isocalendar.htm(转到页面长短ISO年)

“ISO日历年很长,当且仅当相应的公历年开始于星期四,这是一个普通的年份,或者是在星期三的闰年开始。”

这似乎并不总是如作者进一步提到的那样:

“这条规则自1977年以来一直运作良好,但在2004年(从星期四开始的闰年)失败,如下图所示。” (请参阅页面上的图表,因为我不允许发布图像,因此可以使用长短ISO年限)

我的问题是另一种方式。我似乎没有足够的声誉点来显示给你,但在我的Excel输出文件中,我只在1月1日得到CW 0。

他不想要那些第0周。有人知道如何计算另一周的格式而不是来自isocalendar的格式吗?或者我只是做错了什么?

0 个答案:

没有答案