从周数获取date
请问我的代码有什么问题:
import datetime d = "2013-W26" r = datetime.datetime.strptime(d, "%YW%W") print(r)
显示“2013-01-01 00:00:00”,谢谢。
一个星期的数字是不足以产生一个date; 你也需要每周的一天。 添加一个默认值:
import datetime d = "2013-W26" r = datetime.datetime.strptime(d + '-0', "%YW%W-%w") print(r)
-0
和-%w
模式告诉parsing器在那周select星期日。 这输出:
2013-07-07 00:00:00
你可以select自己的工作日,最适合你的用例。 %W
模式基于星期几,因此在这里可能是-1
更好的默认值。
请参阅文档中的strftime()
和strptime()
行为部分,脚注4:
与
strptime()
方法一起使用时,%U
和%W
仅在指定星期几和年份的计算中使用。