2016-10-19 17 views
0

私はこの形式の日付が連続している:'2015 08 01'または'2015 12 11'です。'2015 8 1'または'2015 12 11'の形式に変換します。基本的に、月と日のサブストリングが開始時に0を持つ場合、それは削除する必要があります。例えば完全な月と日の名前を短いものに変更する

:フォーマット("%Y %m %d")の'2015 08 01'日付文字列は、としてとして月の数と日数を持っています。月はにから日にから変換された'2015 8 1'、私は結果の日付になりたいです。

私が試した:

from datetime import datetime 
str_date = '2015 08 01' 
data_conv = datetime.strptime(str_date, "%Y%m%e") 

を、私はこのエラーを取得:

ValueError: 'e' is a bad directive in format '%Y%m%e' 

答えて

2

だけ先行ゼロを削除します。

' '.join([x.lstrip('0') for x in str_date.split()]) 
ありがとうございますが、解決策ではありません。
+0

ありがとうございます。出来た! :) – Litwos

1

それはdする必要があります:

>>> data_conv = datetime.strptime(str_date, "%Y %m %d") 
>>> data_conv 
datetime.datetime(2015, 8, 1, 0, 0) 
+0

私は文字列を別の日付形式に変換したいが、0から始まる月と日(例えば:01、02..09)を(1,2、... 9)に変換する。私は、より良い理解のために質問を編集しました。 – Litwos

関連する問題