#учимпитон
Еще прикольчик. Как только появляется NaN, штука предлагает начать сразу дебаггинг. Если в течение 60 секунд ввести d с клавиатуры, то запускается pdb, если не нажать, то через 60 секунд он ставит флаг на выход, итарация дорабатывает, все досылается в wandb и скрипт с кодом 1 завершается. В идеале бы еще прикрутить отправку сообщения в телегу, чтобы можно было быстро подскочить к компу и начать дебажить)
def nan_handler():
print("NaN encountered, launch debugger? (d): ", end="", flush=True)
i, *_ = select.select([sys.stdin], [], [], 60)
if i and sys.stdin.readline().strip() == "d":
pdb.set_trace()
else:
global EXIT_NEXT_ITER
EXIT_NEXT_ITER = True