プログラム(スレッド)を指定した時間止めるには、time モジュールの sleep 関数を使用します。
プログラム(スレッド)を一時停止させる方法
import time
time.sleep(プログラムを止めたい秒数)
- 1 を指定すると、 1 秒 止まります。
- 0.5 を指定すると、 0.5 秒 止まります。
- 0.001 を指定すると、 0.001 秒 止まります。
- 引数の型は float です。
- sleep関数を呼び出したスレッドだけが停止します。
- 精度は環境(オペレーティングシステムやハードウェア、CPU負荷など)により異なります。
サンプルプログラム
time.sleep関数で 1.5 秒 止め、停止した時間を計測して表示します。 サンプルプログラムで使用している time.time関数 はエポック秒(UNIX時間)と呼ばれる1970年1月1日からの経過秒数を返す関数です。 これを使ってsleep関数の実行時間を計測しています。import time
# sleep 前のエポック秒(UNIX時間)を取得
startSec = time.time()
# 1.5 秒 止める
time.sleep(1.5)
# sleep していた秒数を計算して表示
print(time.time() - startSec)
参考資料
検証環境
- Python 3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)] on win32
- Microsoft Windows 10 Pro Version 20H2 OS Build 19042.804 Experience: Windows Feature Experience Pack 120.2212.551.0