Я использую Python 2.7, и я пытаюсь преобразовать числа недель в фактические даты.Является ошибкой Python `datetime.strptime` для недельных номеров в течение лет с 53 неделями?
Я использовал this решение, которое отлично работало для тестов основы, но я нашел случай, когда есть разрыв: в годах с 53 неделями.
На приведенном ниже рисунке вопрос:
datetime.datetime.strptime("2015-W53-0", "%Y-W%W-%w").strftime("%Y-W%W-%w")
Это возвращает '2016-W01-0'
, который я думаю, не имеет смысла.
Это известная проблема, существует ли известное обходное решение?
Обратите внимание, что:
datetime.datetime.strptime("2015-W53-0", "%Y-W%W-%w").isocalendar()
дает (2016, 1, 7)
, так что, вероятно strptime
, который угадал неправильно здесь.
Это работает, спасибо за публикацию решения. Вы можете принять свой собственный ответ на этот вопрос. Жаль, что 'strptime' не поддерживает'% G' и '% V' для дат ISO *. Джеймс К * упоминает (по крайней мере, не в Python 3.5.2). – JeroenHoek