问题描述
我正在尝试将包含时间元素的字符串转换为datetime对象。
from datetime import datetime as dt
def converttime(dataset):
for i in range(len(dataset)):
datecol=dataset.loc[i]["Date"]
date=datecol[:25]
print(date)
date=dt.strptime(date,"%a,%d %b %Y %H:%M:%s")
dataset.loc[i]['Date']=date
return dataset
数据采用以下格式: '2001年5月14日星期一16:39:00 -0700(PDT)'
我一直在获取价值错误,我也不知道为什么。红色的第一行显示字符串的原始格式,第二行显示我想要的格式的字符串。我不知道为什么循环仅在2次迭代后才停止。
请帮助!
解决方法
我的字符串拼接结尾处有一个额外的空白空间。所以我只用了strip功能,现在该功能起作用了:
def converttime(dataset):
for i in range(len(dataset)):
datecol=dataset.loc[i]["Date"]
date=datecol[:25]
date=date.strip()
date=dt.strptime(date,"%a,%d %b %Y %H:%M:%S")
dataset.loc[i]['Date']=date
return dataset