在Python中将时间戳转换为rfc 3339

在Python中将时间戳转换为rfc 3339,python,timestamp,rfc3339,Python,Timestamp,Rfc3339,我正在尝试将时间戳1452454659转换为其等效的rfc3339 我得到的输出为: 2016-01-11T01:07:39+05:30 当我将其传递给XDB时,它返回的时间为: 2016-01-10T19:37:39Z 实际上我希望XDB中的时间是: 2016-01-11T01:07:39 我甚至试着只通过2016-01-11T01:07:39,而忽略了+5:30,但没有结果 我犯了什么错误?如果您的时间戳是utc格式的,以下示例可能会帮助您: (只需将变量“d”替换为您自己的时间戳) 我的答

我正在尝试将时间戳
1452454659
转换为其等效的rfc3339

我得到的输出为:

2016-01-11T01:07:39+05:30

当我将其传递给XDB时,它返回的时间为:

2016-01-10T19:37:39Z

实际上我希望XDB中的时间是:

2016-01-11T01:07:39

我甚至试着只通过
2016-01-11T01:07:39
,而忽略了
+5:30
,但没有结果


我犯了什么错误?

如果您的时间戳是utc格式的,以下示例可能会帮助您: (只需将变量“d”替换为您自己的时间戳)


我的答案基于以下链接:

有一个专门的python包用于此:


我不想使用now(),因为我的时间戳已经作为字符串存在,这就是为什么我不想使用“now()”添加的部分:“我得到的输出为2016-01-11T01:07:39+05:30,当我将其传递给influxdb时,它从influxdb返回一个时间:2016-01-10T19:37:39Z,而我实际上希望influxdb中的时间为2016-01-11T01:07:39。”这与您的问题“将时间戳转换为rfc 3339”无关“。请特别就influxdb的问题提出一个新问题。influxdb中的所有时间戳都是UTC。没有时区或时区支持。
import datetime
d = datetime.datetime.utcnow()
print d.isoformat("T") + "Z"


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