Python datetime fromtimestamp, приводящий к превышению допустимого уровня годности за пределами допустимого диапазона

При попытке преобразовать временную метку с плавающей точкой, например 1437506779950.0, в объект datetime, я получаю значение ValueError "year out out range".

Этот код, который я использовал, работал не 3 месяца назад. Переиздавая его сейчас, странно сейчас бросает эту ошибку, но ничто в базе кода не изменилось, только данные, которые ему передаются, и единственные данные, которые там были изменены, очевидно, это временная метка.

>>> f = 1437506779950.0
>>> datetime.datetime.fromtimestamp(float(f))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: year is out of range

Я не могу понять, что изменилось бы, чтобы сделать этот разрыв?

Ответ 1

Как отмечено в ответе на этот вопрос, это похоже на проблему преобразования единицы. Вы должны разделить свою временную метку на 1000, чтобы конвертировать из миллисекунд в секунды.

Если вы хотите сохранить точность в миллисекундах, вместо этого делите на 1000.0.