【问题标题】:How to convert time to T Z format in python [duplicate]如何在python中将时间转换为T Z格式[重复]
【发布时间】:2020-11-24 17:42:14
【问题描述】:

我想在 python 中将今天的日期转换为以下格式

我尝试了什么:

>>> import datetime
>>> d_date = datetime.datetime.now()
>>> reg_format_date = d_date.strftime("%Y-%m-%d %I:%M:%S %p")
>>> print(reg_format_date)
2020-08-04 06:40:52 PM

预期格式:

2017-10-18T04:46:53.553472514Z

谁能推荐一下

【问题讨论】:

  • 由于您的时区是Z,您似乎正在寻找UTC时间,对吗?
  • 嗨@Mark Ransom 实际上我正在使用一个api调用,它只需要这种格式的时间戳。这是关于$filter参数非常受限的注释,只允许以下模式。 - 列出资源组的事件:$filter=eventTimestamp ge '2014-07-16T04:36:37.6407898Z' 和 eventTimestamp le '2014-07-20T04:36:37.6407898Z' 和 resourceGroupName eq 'resourceGroupName'。所以想将当前时间转换为这种格式

标签: python python-datetime


【解决方案1】:

以下是获取当前 UTC 时间并转换为 ISO-8601 格式(您的示例显示的格式)的方法。时区被硬编码为Z

import datetime
datetime.datetime.now(datetime.timezone.utc).replace(tzinfo=None).isoformat() + 'Z'

【讨论】:

  • 它的工作谢谢
【解决方案2】:
  • 使用utcnow() 而不是now() 来获取UTC 时间。
  • 使用isoformat() 方法。您需要自己添加尾随 "Z"

总结:

from datetime import datetime
reg_format_date = datetime.utcnow().isoformat() + "Z"

【讨论】:

  • 这太有效了
猜你喜欢
  • 2013-05-07
  • 1970-01-01
  • 2012-02-28
  • 2019-09-24
  • 2018-07-14
  • 2019-07-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多