1. ホーム
  2. python

[解決済み] Pythonのdatetimeを時間なしで表示する

2022-03-04 12:53:24

質問

日付の文字列があり、それを日付型に変換したい。

datetime.datetime.strptimeを希望するフォーマットで使ってみましたが、変換すると時刻が返されます。

    when = alldates[int(daypos[0])]
    print when, type(when)

    then = datetime.datetime.strptime(when, '%Y-%m-%d')
    print then, type(then)

このような出力が返されます。

   2013-05-07 <type 'str'>
   2013-05-07 00:00:00 <type 'datetime.datetime'>

時間:00:00:00 を削除したいのですが。

どのように解決するのですか?

print then.date()

あなたが欲しいのはdatetime.dateオブジェクトです。今あるのは、datetime.datetimeオブジェクトです。上記のように印刷時にオブジェクトを変更するか、オブジェクトを作成する際に以下のようにすることができます。

then = datetime.datetime.strptime(when, '%Y-%m-%d').date()