2013-03-21 24 views
9

如何將字符串轉換爲python中的日期對象?將字符串轉換爲日期類型python

的字符串是: 「30-01-12」(對應的格式爲: 「%D-%間%Y」)

我不想一個datetime.datetime對象,而是一個datetime.date

回答

35

仍然使用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) 
4

這應該工作:

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

Python有內置在處理這樣 – dm03514 2013-03-21 20:57:43

+0

哎呀方法,忘了海峽爲int。我不經常使用日期時間,所以我很高興有更好的方法來做到這一點。 – jbuchman 2013-03-21 21:00:17

3
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()