2016-12-29 9 views
1

XML形式のファイル( '2016-12-22T21:00:00Z')からdatetime文字列をこの形式から変換しようとしていますが、strptimeコード( "%Y- %m-%dT%H:%M:%S%Z ")しかし、それは私にエラーを与えています。Pythonのdatetimeを正しく変換しています

ran = ('2016-12-22T21:00:00Z') 
convert = ("%Y-%m-%dT%H:%M:%S%Z") 
time = datetime.datetime.strptime(ran, convert) 
print(time) 
ValueError: time data '2016-12-22T21:00:00Z' does not match format '%Y-%m-%dT%H:%M:%S%Z 

ウェブサイト上のすべてのQ/Aを読み終えたら、正しいコードでなければならないと思っていましたが、何か簡単なものがありません。グラフにプロットするために使用できるフォーマットがほしいのですが、それはおそらく簡単な修正ですが、わかりません。ありがとう

答えて

2

フォーマットのZの前に%を削除します。 %Zは、UTC、EST、CSTFull List hereなどの文字列形式のタイムゾーン名/省略形を表し、Zという文字自体はタイムゾーンと一致しないため、文字として一致させる必要があります。

import datetime 
ran = ('2016-12-22T21:00:00Z') 
convert = ("%Y-%m-%dT%H:%M:%SZ") 
time = datetime.datetime.strptime(ran, convert) 

time 
# datetime.datetime(2016, 12, 22, 21, 0) 
+0

ありがとう、私はそれが私が行方不明だったことがわかった。 –

関連する問題