将字符串转换为datetime python

时间:2013-03-21 20:51:16

标签: python string date datetime

如何在python中将字符串转换为日期对象?

字符串为:“30-01-12”(对应格式:“%d-%m-%y”)

我不想要datetime.datetime对象,而是datetime.date

3 个答案:

答案 0 :(得分:43)

您仍然使用datetime.datetime,但只请求.date()部分:

datetime.datetime.strptime('30-01-12', '%d-%m-%y').date()

演示:

>>> import datetime
>>> datetime.datetime.strptime('30-01-12', '%d-%m-%y').date()
datetime.date(2012, 1, 30)

答案 1 :(得分:4)

这应该有效:

import datetime
s = "30-01-12"
slist = s.split("-")
sdate = datetime.date(int(slist[2]),int(slist[0]),int(slist[1]))

答案 2 :(得分:4)

from datetime import datetime,date
date_str = '30-01-12'
formatter_string = "%d-%m-%y" 
datetime_object = datetime.strptime(date_str, formatter_string)
date_object = datetime_object.date()