見出し画像

【Python】現在時刻をmsで取得したい.ただし,当日の0時0分0秒を0msとする

【状況】時刻をmsで扱いたいが,当日の0時からの経過時間にしたい,という(たぶん)ニッチな仕様.
【対処】いろいろ方法はあるけど,現在時刻から今日の0時を引く計算がシンプルに見えたのでメモ.

import datetime

# 現在の時刻を取得
now = datetime.datetime.now()

# 現在時刻を午前0時0分0秒に差し替えて,経過ミリ秒を計算する(microsecondがあるので1000倍してmsに)
millisecond_from_midnight = int((now - now.replace(hour=0, minute=0, second=0, microsecond=0)).total_seconds() * 1000)

なお,整数化しているのは,小数が出るため.
計算結果を見る感じよさそうなのでよし♪

この記事が気に入ったらサポートをしてみませんか?