Ваша дата время UTC в RFC 3339 format, можно разобрать его, используя только STDLIB:
from datetime import datetime
utc_dt = datetime.strptime('1984-06-02T19:05:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')
# Convert UTC datetime to seconds since the Epoch
timestamp = (utc_dt - datetime(1970, 1, 1)).total_seconds()
# -> 455051100.0
Смотрите также Converting datetime.date to UTC timestamp in Python
Как его преобразовать в формат ISO 8601?
Для преобразования POSIX метки времени назад, создать объект UTC DATETIME из него, и отформатировать его с помощью .strftime()
метода:
from datetime import datetime, timedelta
utc_dt = datetime(1970, 1, 1) + timedelta(seconds=timestamp)
print(utc_dt.strftime('%Y-%m-%dT%H:%M:%S.%fZ'))
# -> 1984-06-02T19:05:00.000000Z
Примечания: Он печатает шесть цифр после десятичной точки (микросекунды). Чтобы получить три цифры, см. Formatting microseconds to 2 decimal places (in fact converting microseconds into tens of microseconds).
Какие секунды? Секунды с эпохи? –
Думаю, да. Это моя первая работа с датами. –
Связанный: [Преобразование RFC 3339 времени в стандартную метку времени Python] (http://stackoverflow.com/q/1941927/4279) – jfs