2012-12-01 148 views
2

我有以下格式的衆多UTC時間戳: 2012-04-30T23:08:56+00:00 我想將它們轉換爲python日期時間對象,但遇到問題。將UTC時間轉換爲python日期時間

我的代碼:

for time in data: 
    pythondata[i]=datetime.strptime(time,"%y-%m-%dT%H:%M:%S+00:00") 

我得到以下錯誤:

ValueError: time data '2012-03-01T00:05:55+00:00' does not match format '%y-%m-%dT%H:%M:%S+00:00' 

它看起來像我有正確的格式,那麼爲什麼不工作的呢?

+0

相關:[轉換時間戳與偏移到的日期時間的obj使用strptime](HTTP:/ /stackoverflow.com/q/12281975/4279) – jfs

回答

7

變化的一年標誌在你的時間格式字符串%Y

time = '2012-03-01T00:05:55+00:00' 
datetime.strptime(time, "%Y-%m-%dT%H:%M:%S+00:00") 
# => datetime.datetime(2012, 3, 1, 0, 5, 55) 

strftime() and strptime() behavior

0

我高度推薦python-dateutil library,它允許從原始字符串的多個日期時間格式轉換成與datetime對象/無時區設置

>>> from dateutil.parser import parse 
>>> parse('2012-04-30T23:08:56+00:00') 

datetime.datetime(2012, 4, 30, 23, 8, 56, tzinfo=tzutc()) 
相關問題