最近ちょっとPythonのdatetimeを使って迷ったことがあったのでメモ。
Pythonで現在時刻を取るとき datetime.now()
でdatetimeオブジェクトを取りますが、この時microsecondまで取ってしまって、それを取り除きたいときにどうしたらいいのか分からなくて公式ドキュメントを調べたところ、 datetime.replace
メソッドなるものがあることを知りました。
8.1. datetime — 基本的な日付型および時間型 — Python 3.6.5 ドキュメント
こんな感じで使えます。
>>> from datetime import datetime >>> now = datetime.now() >>> now datetime.datetime(2018, 10, 15, 22, 32, 24, 80236) >>> now.replace(microsecond=0) datetime.datetime(2018, 10, 15, 22, 32, 24) >>> now.replace(microsecond=0).isoformat() '2018-10-15T22:32:24'
ISO 8601 形式の文字列をサクッと取りたいとき、microsecondレベルまでは要らなかったのでメモ。