@TRXTSSA

Каким образом перезапустить файл после ошибки?

try/except (и finally) не подойдет, так как ошибка возникает в блоке except. Нужно чтобы файл (или код) полностью перезапускался после ошибки. Я слышал что-то о systemd и restart: on-failure в нем, но так и не понял как этой штуковиной пользоваться.
  • Вопрос задан
  • 116 просмотров
Решения вопроса 1
Судя по systemd вы в линуксе? Значит у вас os.system(command) вернёт exit code, который при нормальном завершении равен нулю.

import os
 
while True:
    exit_code = os.system("python3 script.py")  # Возможно тут следует написать полные пути
    if exit_code == 0:
        print("success!")
        break
    print(f"exit_code is {exit_code}, will retry")

А systemd это уже ближе к администрированию целой системы. Это фоновые сервисы и задачи, и т. п.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы