17

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

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

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

4

3 回答 3

47

您仍然使用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)
于 2013-03-21T20:52:40.640 回答
5

这应该有效:

import datetime
s = "30-01-12"
slist = s.split("-")
sdate = datetime.date(int(slist[2]),int(slist[0]),int(slist[1]))
于 2013-03-21T20:56:17.490 回答
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()
于 2013-03-21T21:36:20.170 回答