You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用datetime.strptime转换字符串为datetime对象时遇格式匹配错误求助

问题原因

你用的格式符%y代表两位数的年份(比如19、20),但你的时间数据'2019-12-06 09:00:00'里是四位数的年份,两者不匹配,所以触发了格式错误。

修复方案

1. 修正循环代码的格式符

把格式字符串里的%y改成%Y(四位数年份的对应格式符),修改后的代码:

from datetime import datetime
for i in range(0, len(df)):
    df['date'][i] = datetime.strptime(df['date'][i], '%Y-%m-%d %H:%M:%S')

2. 更高效的Pandas原生写法(推荐)

Pandas自带了专门处理日期转换的pd.to_datetime()方法,不需要手动循环遍历,效率更高、代码更简洁:

import pandas as pd
df['date'] = pd.to_datetime(df['date'], format='%Y-%m-%d %H:%M:%S')

如果你的日期是标准格式,甚至可以省略format参数,Pandas会自动识别:

df['date'] = pd.to_datetime(df['date'])

内容的提问来源于stack exchange,提问作者Wenjie Yu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:12:02