Sobes.tech
Назад к вопросам
Junior — Middle
65

Объясните, как работает блок finally в сочетании с try и except в Python и для чего он используется.

Ответ от нейросети

sobes.tech AI

В Python блок finally используется вместе с try и except для гарантированного выполнения кода, независимо от того, возникло исключение или нет. Это полезно для освобождения ресурсов, закрытия файлов, освобождения блокировок и других операций очистки.

Схема работы:

  • В блоке try выполняется основной код.
  • Если возникает исключение, управление передается в соответствующий блок except.
  • После выполнения try и/или except всегда выполняется блок finally.

Пример:

try:
    f = open('file.txt')
    data = f.read()
except IOError:
    print('Ошибка при чтении файла')
finally:
    f.close()  # гарантированно закроет файл

Таким образом, finally обеспечивает выполнение критически важного кода очистки вне зависимости от ошибок.