将时间数据'2019-06-19'转换为格式'%d-%m-%Y'

时间:2019-08-07 12:19:13

标签: python datetime

尝试将%Y-%m-%d“转换为”%d-%m-%Y“。根据表单中输入的日期,对象im转换为“ unicode”。我需要发送此开始日期到我的SQL查询以从该时间表中获取数据。

我以前已经这样做过,但是由于要转换的start_date格式为“%Y-%m-%d”,因此不再起作用。它必须以我的SQL查询中的%d-%m-%Y结尾!

   start= datetime.datetime.strptime(start_date, "%Y-%m-%d")
   end= datetime.datetime.strptime(end_date, "%Y-%m-%d")

  start_time=start.strftime("%d-%m-%Y")
  end_time=end.strftime("%d-%m-%Y")

我想将收到的输入表单2019-06-19转换为19-06-2019。非常感谢。我不知道为什么我会这么难。

3 个答案:

答案 0 :(得分:5)

您可以使用其当前格式将时间字符串解析为datetime.datetime,然后以新格式设置结果对象的格式:

datetime.datetime.strptime(thing, "%Y-%m-%d").strftime("%d-%m-%Y")

例如:

>>> datetime.datetime.strptime('2019-05-18', "%Y-%m-%d").strftime("%d-%m-%Y")
'18-05-2019'

答案 1 :(得分:0)

您在寻找这个吗?

year, month, date = "%Y-%m-%d".split('-')
"{}-{}-{}".format(date,month,year)

答案 2 :(得分:0)

您可以尝试以下方法:

import datetime

start = '2019-06-19'

start_time = datetime.datetime.strptime(start_time, '%Y-%m-%d').strftime('%d-%m-%Y')```