У меня есть программа, содержащая несколько файлов .py в одной папке; Я выполняю его, запустив один конкретный файл в моей IDE, Pycharm. (Файл, назовем его A.py
, вызывает определенный метод main()
, определенный в нем, поэтому запуск файла означает просто запуск этого метода.) Это часть текущих исследований, и даже в лучшем случае это занимает много времени. время для завершения из-за сложности вычислений, поэтому в идеале я бы просто нажал "выполнить", сделать что-то еще и проверить позже.
Однако есть проблема:
- поведение программы зависит от реакции удаленного сервера на запрос;
- иногда (все чаще в последние несколько дней) это приводит к SSLError и коду выхода 1;
- и для целей этого вопроса мы предположим, что я не могу устранить эту неустойчивую проблему с изменениями в моем собственном коде.
Поэтому вместо того, чтобы вручную перезапускать каждый раз, когда это происходит, я хотел бы установить конечное допустимое количество попыток, при котором код выхода 1 глотается, если он встречается, что приводит к следующей попытке.
Было бы что-то вроде этого во втором файле, если вы простите псевдокод:
from a import main
numtries, maxtries = 0, 10
while numtries < maxtries:
ec = exitcode(main)
if ec != 0: numtries += 1
Можно ли что-то подобное сделать?