2017-06-14 29 views
0

Pythonコードが日付時刻形式でエラーを表示しています。このタイプの日付の正しいフォーマットはどうすればよいですか:'09-Jul-11 12:00:00 AM '? 日付は、テキストファイルから文字列として取得されます。 これは私が日付と時刻に使用したコードです。Pythonの日付時刻形式のエラー

date=datetime.datetime.strptime(date, "%d-%B-%y %H:%M:%S %p") 

これは私が得たエラーです。

ValueError: time data '09-Jul-11 12:00:00 AM' does not match format '%d-%B-%y %H:%M:%S %p' 

P.S:私は、Python 3

+0

ここに来る前に、ドキュメントを参照する必要があります。 https://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior –

+0

... [topic/help]、[ask]、[mcve]を読んでください。 – boardrider

答えて

1

を使用していますこれは、月と時間の間違った形式です。 %B(ロケールの省略名[1]として月)の代わりに%bを使用し、%H(12時間形式)ではなく%Iを使用してください。

date=datetime.datetime.strptime(date, "%d-%b-%y %I:%M:%S %p") 

[1]:

+1

%b \tロケールの省略名としての月。 \t Jan、Feb、... Dec(en_US); –

0

Online Demo %bリッキーハンさんのコメントへの感謝は、完全な月名に使用され%Bを使用していたname.You短縮された月のために使用すべきです。

%Hは、24時間制(00~23)を使用して1時間に使用されます。 "%d-%b-%y %I:%M:%S %p"(略称月の%b、12時間クロックの%I):%Iが正しい書式文字列が12時間制(01〜12)

import datetime 
date = '09-Jul-11 12:00:00 AM' 
date=datetime.datetime.strptime(date, "%d-%b-%y %I:%M:%S %p") 
print(date) 
+0

PM時間の場合は、 '%H 'も正しくありません。 –

+0

@Błotosmętekありがとう –

0

を使用して、時間のために使用されます。

関連する問題