Если вы хотите проверить время выполнения в нескольких точках цикла (вместо одного раза в цикле), вы можете написать для этого функцию.
from time import time
start_time = time()
max_runtime = 1000 # maximum runtime in seconds
def end_loop():
if time()-start_time > max_runtime:
return True
else:
return False
Затем вы можете вставить это в различные точки вашего цикла, например:
while time()-start_time < max_runtime:
# do some stuff
if end_loop():
break
# do some more stuff
if end_loop():
break
Таким образом, вам не нужно ждать начала цикла перед проверкой времени выполнения. Однако этот подход позволяет вам проверять только время выполнения в конечных точках вашего кода, поскольку разрыв цикла возможен только при вызове end_loop()
. Возможно, ваше время выполнения превысит максимальное время ожидания при ожидании следующего end_loop()
.