2016-01-10 2 views
3

Как преобразовать метку времени в ее эквивалент rfc3339? Я пытаюсь преобразовать 1452454659 в свой эквивалент rfc3339. Я получаю вывод как 2016-01-11T01: 07: 39 + 05: 30, когда я передаю это в infuxdb, он возвращает время: 2016-01-10T19: 37: 39Z из influxdb, в то время как я действительно хочу, чтобы время в infuxdb - 2016-01-11T01: 07: 39. Я даже попытался пройти только 2016-01-11T01: 07: 39, оставив «+5: 30», но тогда это не дает мне никакого результата. Какую ошибку я делаю?Преобразование timpestamp в rfc 3339 в python

+0

Я не хочу использовать now(), поскольку моя метка времени уже существует как строка, и именно поэтому я не хочу использовать «now()» –

+0

добавленную часть: * «Я получаю вывод как 2016-01-11T01: 07: 39 + 05: 30, когда я передаю это на infuxdb, он возвращает время: 2016-01-10T19: 37: 39Z от infuxdb, в то время как я действительно хочу, чтобы время в influxdb составляло 2016-01 -11T01: 07: 39. * * Не имеет отношения к вашему вопросу * «конвертировать временную метку в rfc 3339» *. Задайте новый вопрос о своих проблемах с помощью infuxdb. – jfs

+0

Все временные метки в InfluxDB - UTC. Нет часовых поясов и поддержки часового пояса. – beckettsean

ответ

2

, если ваша временная метка из формата МСВ, следующий пример может помочь вам: (просто замените переменную «D» с собственной меткой времени)

import datetime 
d = datetime.datetime.utcnow() 
print d.isoformat("T") + "Z" 


--> 2016-01-10T09:33:33.865129Z 

я на основе моего ответа по следующей ссылке: https://docs.python.org/2/library/datetime.html

0
>>> print datetime.datetime.utcnow().strftime("%Y-%m-%dT%H:%M:%S.%f")[:-4]+"Z" 
2016-01-10T10:27:45.89Z