gpt4 book ai didi

python - Python 中的 ISO 时间 (ISO 8601)

转载 作者:IT老高 更新时间:2023-10-28 12:11:00 30 4
gpt4 key购买 nike

我有一个文件。在 Python 中,我想占用它的创建时间,并将其转换为 ISO time (ISO 8601) string 同时保留它是在 Eastern Time Zone 中创建的事实。 (美国东部时间)

如何获取文件的 ctime 并将其转换为指示东部时区的 ISO 时间字符串(并在必要时考虑夏令时)?

最佳答案

本地到 ISO 8601:

import datetime
datetime.datetime.now().isoformat()
>>> 2020-03-20T14:28:23.382748

UTC 到 ISO 8601:

import datetime
datetime.datetime.utcnow().isoformat()
>>> 2020-03-20T01:30:08.180856

本地到 ISO 8601,无微秒:

import datetime
datetime.datetime.now().replace(microsecond=0).isoformat()
>>> 2020-03-20T14:30:43

UTC 到 ISO 8601 以及时区信息 (Python 3):

import datetime
datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc).isoformat()
>>> 2020-03-20T01:31:12.467113+00:00

UTC 到 ISO 8601,本地时区信息不带微秒(Python 3):

import datetime
datetime.datetime.now().astimezone().replace(microsecond=0).isoformat()
>>> 2020-03-20T14:31:43+13:00

具有时区信息的 ISO 8601 本地 (Python 3):

import datetime
datetime.datetime.now().astimezone().isoformat()
>>> 2020-03-20T14:32:16.458361+13:00

请注意,在 UTC 时间使用 astimezone() 时存在错误。这给出了不正确的结果:

datetime.datetime.utcnow().astimezone().isoformat() #Incorrect result

对于 Python 2,请参阅并使用 pytz .

关于python - Python 中的 ISO 时间 (ISO 8601),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2150739/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com