日期为datetime.date(2013, 12, 30)
我正在尝试获取周数,使用
import datetime
datetime.date(2013, 12, 30).isocalendar()[1]我得到的输出是,
1为什么我没有得到去年的周数,而是今年的周数?
我在这里做错了什么?
发布于 2014-01-15 22:43:21
你没有做错什么,根据ISO8601 week numbering standard的说法,2013/12/30将在2014年的第一周倒下
表示01周的ISO8601定义是一年的第一个星期四的那一周。
那一周的星期四是2014/01/02。
解释定义的其他方法,来自同一篇链接的WikiPedia文章:
如果您要查找给定年份的最后一周数字(52或53,取决于年份),我会使用12月28日,它总是保证在最后一周(因为1月4日总是下一年第一周的一部分):
def lastweeknumber(year):
return datetime.date(year, 12, 28).isocalendar()[1]https://stackoverflow.com/questions/21140371
复制相似问题