Pythonでは、while
ループを使って特定の条件が満たされるまで処理を繰り返すことができます。しかし、無限ループになってしまうとプログラムが停止しなくなるため、一定時間後にループから抜け出す方法が必要です。
以下に、Pythonでwhile
ループを一定時間実行した後に停止する方法を示します。
import time
from threading import Thread
cond = True
def f():
global cond
time.sleep(1) # ここで指定した秒数だけ処理を続けます
cond = False
thread = Thread(target=f)
thread.start()
while cond:
print("ループ中...")
time.sleep(0.2) # ループの間隔を指定します
このコードでは、Thread
を使って新しいスレッドを作成し、そのスレッド内で一定時間待機した後にcond
変数をFalse
に設定します。メインのwhile
ループはcond
がTrue
である間、繰り返し処理を行います。したがって、スレッド内の処理が一定時間経過するとcond
がFalse
になり、メインのループが停止します。
この方法を使えば、Pythonのwhile
ループを一定時間だけ実行し、その後自動的に停止させることができます。.