Django中日期字符串转换报错:'str'对象无strptime属性求助
日期字符串格式转换错误修复
错误原因
strptime() 是Python datetime 模块的方法,并非字符串(str)对象的内置方法,直接调用字符串的strptime()会触发AttributeError: 'str' object has no attribute 'strptime'。
修正代码
from datetime import datetime # 从数据库获取的原始日期字符串 date_str = "2022-06-20T10:17:28-05:00" # 1. 将字符串解析为datetime对象,格式符匹配原始字符串结构 parsed_date = datetime.strptime(date_str, '%Y-%m-%dT%H:%M:%S%z') # 2. 转换为目标格式"月/日/年 时:分:秒" formatted_date = parsed_date.strftime('%m/%d/%Y %H:%M:%S') print(formatted_date) # 输出示例: 06/20/2022 10:17:28
关键说明
- 解析原始字符串时,
%Y-%m-%dT%H:%M:%S%z完全匹配2022-06-20T10:17:28-05:00的结构(%z代表时区偏移) - 必须先将字符串转为
datetime对象,才能用strftime()生成目标格式的字符串
内容的提问来源于stack exchange,提问作者patel887
相关产品推荐
相关产品推荐

