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

使用Python将iso8601格式的日期时间转换为其他常见日期时间格式

发布时间:2023-12-29 18:28:24

Python提供了多种方法来将iso8601格式的日期时间转换为其他常见日期时间格式。下面是几种常见的转换方法及其使用示例:

1. datetime模块:

from datetime import datetime

# 将iso8601格式的日期时间转换为datetime对象
iso8601_datetime = '2021-08-31T12:30:45Z'
dt = datetime.fromisoformat(iso8601_datetime)
print(dt)  # 2021-08-31 12:30:45+00:00

# 将datetime对象转换为其他常见日期时间格式
print(dt.strftime('%Y-%m-%d'))  # 2021-08-31
print(dt.strftime('%H:%M:%S'))  # 12:30:45

2. dateutil库:

from dateutil.parser import parse

# 将iso8601格式的日期时间转换为datetime对象
iso8601_datetime = '2021-08-31T12:30:45Z'
dt = parse(iso8601_datetime)
print(dt)  # 2021-08-31 12:30:45+00:00

# 将datetime对象转换为其他常见日期时间格式
print(dt.strftime('%Y-%m-%d'))  # 2021-08-31
print(dt.strftime('%H:%M:%S'))  # 12:30:45

3. Arrow库:

import arrow

# 将iso8601格式的日期时间转换为Arrow对象
iso8601_datetime = '2021-08-31T12:30:45Z'
arrow_dt = arrow.get(iso8601_datetime)
print(arrow_dt)  # 2021-08-31T12:30:45+00:00

# 将Arrow对象转换为其他常见日期时间格式
print(arrow_dt.format('YYYY-MM-DD'))  # 2021-08-31
print(arrow_dt.format('HH:mm:ss'))  # 12:30:45

4. Pandas库:

import pandas as pd

# 将iso8601格式的日期时间转换为Pandas的Timestamp对象
iso8601_datetime = '2021-08-31T12:30:45Z'
pd_timestamp = pd.Timestamp(iso8601_datetime)
print(pd_timestamp)  # 2021-08-31 12:30:45+00:00

# 将Timestamp对象转换为其他常见日期时间格式
print(pd_timestamp.strftime('%Y-%m-%d'))  # 2021-08-31
print(pd_timestamp.strftime('%H:%M:%S'))  # 12:30:45

这些方法可以将iso8601格式的日期时间转换为其他常见日期时间格式,如年-月-日或时:分:秒。根据具体的需求,可以选择适合的方法来完成转换操作。