编程语言
首页 > 编程语言> > Python中的ISO时间(ISO 8601)

Python中的ISO时间(ISO 8601)

作者:互联网

我有一个文件.在Python中,我想花费它的创建时间,并将其转换为ISO time (ISO 8601) string,同时保留它在Eastern Time Zone(ET)中创建的事实.

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

解决方法:

ISO 8601本地:

import datetime
datetime.datetime.now().isoformat()

UTC至ISO 8601:

import datetime
datetime.datetime.utcnow().isoformat()

本地到ISO 8601没有微秒:

import datetime
datetime.datetime.now().replace(microsecond=0).isoformat()

带有TimeZone信息的UTC到ISO 8601(Python 3):

import datetime
datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc).isoformat()

带有TimeZone信息的本地ISO 8601(Python 3):

import datetime, time

# Calculate the offset taking into account daylight saving time
utc_offset_sec = time.altzone if time.localtime().tm_isdst else time.timezone
utc_offset = datetime.timedelta(seconds=-utc_offset_sec)
datetime.datetime.now().replace(tzinfo=datetime.timezone(offset=utc_offset)).isoformat()

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

标签:iso8601,python,datetime
来源: https://codeday.me/bug/20190926/1820758.html