私は、次のtimestringをしている場合:変換 - Pythonの
20150505
は、どのように私はこれはPythonで日付May 5, 2015
に変換しますか?これまで私が試してみた:
from datetime import datetime
sd = datetime.strptime('20150504', '%Y%M%d')
しかし、この出力を:
2015-01-04 00:05:00
私は、次のtimestringをしている場合:変換 - Pythonの
20150505
は、どのように私はこれはPythonで日付May 5, 2015
に変換しますか?これまで私が試してみた:
from datetime import datetime
sd = datetime.strptime('20150504', '%Y%M%d')
しかし、この出力を:
2015-01-04 00:05:00
分ない月を表しM
資本を。小文字m
を使用して、フォーマットをリファクタリングするstrftime
メソッドを呼び出します。
>>> datetime.strptime('20150504', '%Y%m%d').strftime('%b %d, %Y')
'May 04, 2015'
あなたはd
の代わりに-d
ディレクティブを使用して、月からゼロパディングを削除することができますの
%-d
日月は10進数です。長い月名に(プラットフォーム固有の)
、あなたは完全な月名を取得するために%b
の代わりに指示%B
を使用することができます。
参考:あなたはそれが日付と日時はないと知っている、またはあなたが形式がわからない場合
。あなたはdateutilを使うことができます。
from dateutil.parser import parse
print(parse('20150504'))
これはOPの一例として、一日のためにゼロをリードするwihout、anwserです:
print(sd.strftime('%b %-d, %Y'))
# Jan 4, 2015 # note your sd parsing is wrong. Thus Jan
私はOPのフォーマット例に従って、日付から先行ゼロを削除するには、anwserを改正提案します。 – Marcin
@Marcinその指示はすべてのプラットフォームで動作することが保証されていません –
OPはplatorm、pythonのバージョンなどを指定していません。だから、そのことについてコメントするのは難しい。しかし、それを認識することはまだ価値があります。 – Marcin