strptime を使用して、日付文字列をdatetime
に変換しています。リンクされたページによると、このようなフォーマットは機能するはずです。
>>> # Using datetime.strptime()
>>> dt = datetime.strptime("21/11/06 16:30", "%d/%m/%y %H:%M")
私のコードは:
import datetime
dtDate = datetime.strptime(sDate,"%m/%d/%Y")
ここで、sDate = "07/27/2012"
。 (同じページから、%Y
は "年を10進数として世紀とする。")
私はsDateの実際の値をコードに入れようとしました:
dtDate = datetime.strptime("07/27/2012","%m/%d/%Y")
しかし、これは機能しません。私が得るエラーは:
AttributeError:「モジュール」オブジェクトには属性「strptime」がありません
私は何を間違えていますか?
datetime.datetime.strptime
を使用する必要があります。 Pythonの非常に古いバージョン(2.4以前)にはdatetime.datetime.strptime
がないことに注意してください。その場合は time.strptime
を使用します。
strptime
関数を持たないモジュールdatetimeをインポートしています。
そのモジュールdoesはそのメソッドでdatetime
オブジェクトを持っています:
import datetime
dtDate = datetime.datetime.strptime(sDate, "%m/%d/%Y")
または、モジュールからdatetime
オブジェクトをインポートできます。
from datetime import datetime
dtDate = datetime.strptime(sDate, "%m/%d/%Y")
python 2.5でstrptime
メソッドが追加されたことに注意してください。古いバージョンを使用している場合は、代わりに次のコードを使用します。
import datetime, time
dtDate = datetime.datetime(*time.strptime(sDate, "%m/%d/%Y")[:6])
datetime
はモジュールであるためです。クラスはdatetime.datetime
です。
import datetime
dtDate = datetime.datetime.strptime(sDate,"%m/%d/%Y")
strftime
モジュールのdatetime
クラスのdatetime
静的メソッドを使用する必要があります。試してください:
import datetime
dtDate = datetime.datetime.strptime("07/27/2012", "%m/%d/%Y")
プロジェクトのフォルダーに「datetime.py」という名前のファイルを作成した場合
また、以下を実行して、日時をインポートすることもできます
from datetime import datetime as dt
dt.strptime(date, '%Y-%m-%d')