Python: если где-либо возникает ошибка, выполните определенную строку кода

#error-handling #try-except

#обработка ошибок #попробуйте-except

Вопрос:

У меня есть скрипт, который я пытаюсь написать для обработки большого объема данных. Конечно, возможны ошибки. В скрипте мне нужно подключиться к базам данных. Если скрипт обнаруживает ошибку, код никогда не достигает точки, в которой соединение с базой данных прерывается. Я хотел бы иметь в своем коде python что-то, что распознает ошибку, независимо от того, где, и если ничего другого, по крайней мере, закройте эти базы данных. Существует ли что-то подобное? Я знаю, что могу использовать try /except, но это сработает, только если я точно знаю, где я могу получить ошибку? Я в основном ищу общий ключ для закрытия моих баз данных в случае возникновения ошибки в месте, которого я не ожидал.

Ответ №1:

Чтобы запустить определенный код очистки, даже если есть ошибка, используйте finally блок:

 try:
   # do stuff, possible exception
except:
   # run this if exception
finally:
   # always run this, even if exception
  

Ссылка: https://docs.python.org/3/tutorial/errors.html#defining-clean-up-actions

Комментарии:

1. наконец-то кажется отличной мелочью. Большое спасибо!