使用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格式的日期时间转换为其他常见日期时间格式,如年-月-日或时:分:秒。根据具体的需求,可以选择适合的方法来完成转换操作。
