我需要從12/09/2008-12:40:49形式的字符串(輸入到url)中轉換日期。顯然,我需要在它的末尾有一個UNIX時間戳,但在得到這些之前,我首先需要Date對象。Django - 字符串到日期 - 日期到UNIX時間戳
我該怎麼做?我無法找到以該格式顯示日期的資源?謝謝。
我需要從12/09/2008-12:40:49形式的字符串(輸入到url)中轉換日期。顯然,我需要在它的末尾有一個UNIX時間戳,但在得到這些之前,我首先需要Date對象。Django - 字符串到日期 - 日期到UNIX時間戳
我該怎麼做?我無法找到以該格式顯示日期的資源?謝謝。
您需要strptime
方法。如果您使用的是Python 2.5或更高版本,則這是datetime
上的一種方法,否則您必須使用time
和datetime
模塊的組合來實現此目的。
Python 2.5的了:
from datetime import datetime
dt = datetime.strptime(s, "%d/%m/%Y-%H:%M:%S")
低於2.5:
from datetime import datetime
from time import strptime
dt = datetime(*strptime(s, "%d/%m/%Y-%H:%M:%S")[0:6])
您可以使用time.strptime()
方法來分析日期字符串。這將返回一個time_struct
,您可以傳遞給time.mktime()
(當字符串表示本地時間時)或calendar.timegm()
(當字符串是UTC時間時),以獲得自紀元以來的秒數。
仍然出現錯誤? :S >>> >>> time1 =「08-05-2009-05-10-54」 >>> dt = datetime.strptime(time1,「%d-%m-%Y%H: %M:%S 「) 回溯(最近通話最後一個): 文件」」,1號線,在 文件 「/usr/lib/python2.5/_strptime.py」,第331行,在strptime (data_string,format)) ValueError:時間數據與格式不匹配:data = 08-05-2009-05-10-54 fmt =%d-%m-%Y%H:%M:%S >> > –
Federer
2009-08-17 08:51:41
其實,那是我的錯!非常感謝你! – Federer 2009-08-17 08:52:36