Python中转换ISO日期为Y/M/D格式及日期对比问题求助
解决ISO日期转换与日期对比问题
1. 转换ISO格式日期为年/月/日
针对'2022-12-10T11:04:11.373Z'这种ISO 8601格式的日期,strip只能处理首尾字符,无法剥离时间部分,必须通过datetime模块解析后提取日期:
from datetime import datetime iso_date = '2022-12-10T11:04:11.373Z' # 替换末尾Z为UTC时区标识,适配fromisoformat方法 dt = datetime.fromisoformat(iso_date.replace('Z', '+00:00')) # 方法1:转成年/月/日格式字符串 formatted_date = dt.strftime('%Y/%m/%d') print(formatted_date) # 输出:2022/12/10 # 方法2:提取纯日期对象(推荐用于后续对比) target_date = dt.date()
2. 接收年/月/日格式输入
通过strptime方法解析用户输入的年/月/日字符串,转为日期对象:
# 假设用户输入格式为YYYY/MM/DD user_input = input("请输入年/月/日格式日期:") input_date = datetime.strptime(user_input, '%Y/%m/%d').date()
3. 对比两个日期
日期对象支持直接用比较运算符(==/>/<)对比:
if target_date == input_date: print("两个日期一致") elif target_date > input_date: print("转换后的日期晚于输入日期") else: print("转换后的日期早于输入日期")
内容的提问来源于stack exchange,提问作者Printer
相关产品推荐
相关产品推荐

