Я пробовал следующую строку кода, которая возвращает странный результат.dateutil.parser.parse не возвращает правильное время datetime
In [68]:
from datetime import datetime
from dateutil.parser import parse
parse('2017/JAN')
Out[68]:
datetime.datetime(2017, 1, 6, 0, 0)
Поскольку анализатор было приказано разобрать даты и времени строку до января, то можно обоснованно предположить, что выход должен быть первый день месяца, а именно, 2017/январь/1.
Однако, странно, выход был 2017/январь/6, дата которого совпадает с датой на моем ПК с ОС Windows.
Итак, я попытался изменить дату на вчерашний день (февраль/5), а выход изменился на дату и время (2017, 1, 5, 0, 0), что соответствует 2017/JAN/5.
Похоже, что парсер берет дату из календаря локального компилятора, на котором он запущен, в случае, если дата не указана в качестве аргумента функции.
Это поведение по дизайну или, может быть, ошибка? Если это предназначено, что было бы логичным?
Спасибо
может у дать разъяснение вашего вопрос –