欢迎访问宙启技术站
智能推送

如何在Python中将日期和时间从ISO8601格式转换为其他常见日期和时间格式

发布时间:2023-12-18 09:04:01

在Python中,可以使用datetime模块来将日期和时间从ISO8601格式转换为其他常见的日期和时间格式。Python的datetime模块提供了datetime类,可以进行日期和时间的处理和转换。

下面是一些常见日期和时间格式的转换示例:

1. ISO8601格式转换为年月日格式(YYYY-MM-DD):

import datetime

iso_date = "2022-05-20T14:30:00Z"
date_obj = datetime.datetime.fromisoformat(iso_date)
date_str = date_obj.strftime("%Y-%m-%d")

print(date_str)  # Output: 2022-05-20

2. ISO8601格式转换为年月日时分格式(YYYY-MM-DD HH:MM):

import datetime

iso_date = "2022-05-20T14:30:00Z"
date_obj = datetime.datetime.fromisoformat(iso_date)
date_str = date_obj.strftime("%Y-%m-%d %H:%M")

print(date_str)  # Output: 2022-05-20 14:30

3. ISO8601格式转换为带有星期的日期格式(YYYY年MM月DD日 星期X):

import datetime

iso_date = "2022-05-20T14:30:00Z"
date_obj = datetime.datetime.fromisoformat(iso_date)
weekday = date_obj.strftime("%A")  # 获取星期几
date_str = date_obj.strftime("%Y年%m月%d日") + " " + "星期" + weekday[-1]

print(date_str)  # Output: 2022年05月20日 星期五

4. ISO8601格式转换为时间格式(HH:MM:SS):

import datetime

iso_date = "2022-05-20T14:30:00Z"
date_obj = datetime.datetime.fromisoformat(iso_date)
time_str = date_obj.strftime("%H:%M:%S")

print(time_str)  # Output: 14:30:00

这些示例中,我们首先使用datetime.datetime.fromisoformat()将ISO8601格式的日期和时间字符串转换为datetime对象。然后,使用strftime()方法将datetime对象转换为指定的格式字符串。

需要注意的是,ISO8601格式的日期和时间字符串需要满足一定的格式要求,包括使用T分隔日期和时间部分,使用Z表示UTC时间等。

以上是一些常见的日期和时间格式转换示例,你可以根据自己的需求选择合适的格式进行转换。