この記事は最終更新日から1年以上が経過しています。
Pythonで時間を止める方法を習得したので、紹介です。
freezegunというモジュールを利用することができます。
以下のように記載すると、関数内で
detetime.detetime が返す日時を
date に固定できます。
import datetime, freezegun from time import sleep date = datetime.datetime.now() @freezegun.freeze_time(date) def test_method(): print('1回目:' + str(datetime.datetime.now())) sleep(5) print('2回目:' + str(datetime.datetime.now())) if __name__ == '__main__': test_method() |
以下実行結果になります。
$ ./venv/bin/python sample.py 1回目:2018-03-29 16:18:35.192320 2回目:2018-03-29 16:18:35.192320 |
以下のようにも指定できます。
@freezegun.freeze_time('2018-03-29 16:18:35') |
この記事を書いた人
-
新卒3年目で脱新人を目指してます。
フロントに興味を持ち始めた今日このごろ。
趣味は 麻雀 プログラミング 音楽。
運動不足を感じているため、ダンスを始めようかと思っています。
最近書いた記事
- 2019.06.26コンテナイメージの縮小
- 2019.05.27Chromeのユーザ切り替えで複数のAWS環境の管理をわかりやすくする
- 2019.04.15ECRのライフサイクルポリシー
- 2019.03.29KongでOAuth2の認証手順