システム開発をしていると、日時の変換に苦しむことが多いかと思います。文字列なのか、date型なのか、time型なのか、それとも全く別のものにすべきなのか。

先日、表題のような文字列をどうやったらdate型にできるかに手こずったので解決方法を備忘録として簡単にまとめることにしました。

環境

  • Django: 2.2.4
  • Python: 3.7

結論

もう結論を書いてしまいますが、下記のようにすれば

Tue Jun 26 01:54:35 +0000 2007
Code language: CSS (css)

のような文字列をdate型に変換できます。

requirements.txt

python-dateutil

djangoプロジェクトで使うモジュールを管理するrequirements.txtに `python-dateutil`を追記します。

使い方

import

from dateutil import parser
Code language: JavaScript (javascript)

コード

parser.parse('Tue Jun 26 01:54:35 +0000 2007').strftime('%Y-%m-%d')
Code language: JavaScript (javascript)

これで

'2007-06-26'
Code language: JavaScript (javascript)

のようなdate型のデータが手に入ります。

By user