转换日期格式以插入到mysql db中

时间:2016-11-07 15:47:23

标签: python python-3.x datetime

我有pandas列row['date'],其中包含格式为11/05/2015的日期。我试图将其插入到mysql数据库中,但由于日期字段数据的格式不正确而出现问题。必须将其转换为2015-11-05才能插入。如果不将新值存储在变量中,如何将日期转换为所需格式?

Current format: 11/05/2015
Required format: 2015-11-05

3 个答案:

答案 0 :(得分:2)

目前的格式是mm / dd / yyyy吗?如果是的话

from datetime import datetime
row['date'] = datetime.strptime(row['date'], '%m/%d/%Y').strftime('%Y-%m-%d')

答案 1 :(得分:0)

使用dateutil.parser

  

此模块提供通用日期/时间字符串解析器,能够解析大多数已知格式以表示日期和/或时间。

这是一个MWE。

from dateutil.parser import parse

current_date = '11/05/2015'
required_date = parse(current_date).strftime('%Y-%m-%d')

PS:明确区分DMMD,将参数dayfirst=True/False传递给parse,即dayfirst=True代表DM和{ {1}}代表dayfirst=False

答案 2 :(得分:-1)

这应该可以完成工作,无需datetime

"{2}-{0}-{1}".format(*(original_date.split("/")))