【发布时间】:2014-07-11 11:07:54
【问题描述】:
我正在尝试使用 python 从 CSV 文件中提取日期并将其上传到数据库中。
在 CSV 中,日期格式为 dd/mm/YYYY HH:MM,例如 21/04/14 17:24, 2014 年 7 月 4 日 17:12。
在尝试将日期插入 DB(Sql 服务器)之前,我在 python 控制台上打印它。
但是以下格式会产生错误[日期在 0-9/月 0-9/年之间],例如 7/4/2014 17:12,04/02/2014 会产生以下错误
ValueError: time data '7/4/2014 17:12' does not match format '%d/%m/%y %H:%M'
我的代码是这样的
formatter_string = "%d/%m/%Y %H:%M"
for row in reader:
datetime_object = datetime.strptime(row[9], formatter_string)
row[9] = str(datetime_object.date())
print "insert into "+UploadTable+" values ("+nullcheckstr(row[9])+")"
附加信息:nullcheckstr() 确保日期不为空,row[9] 是 CSV 中的日期列
【问题讨论】:
-
%Y不是%y;它应该是 4 位数年份的大写 y -
也试过了!没用。
-
错误是什么?
-
如果你只想要日期部分,只需拆分字符串。
'7/4/2014 17:12'.split()[0].
标签: python sql-server csv