Sobes.tech
Back to questions
Junior — Middle
88

Какое исключение в Python невозможно поймать с помощью конструкции try-except?

Companies where asked
Т-БанкТ-Банк

Answer from AI

sobes.tech AI

В Python есть исключения, которые нельзя поймать с помощью конструкции try-except, например, исключения, связанные с системным завершением программы:

  • SystemExit — вызывается функцией sys.exit(), завершает программу.
  • KeyboardInterrupt — возникает при прерывании программы пользователем (Ctrl+C).
  • GeneratorExit — вызывается при закрытии генератора.

Хотя технически их можно поймать, делать это не рекомендуется, так как они предназначены для управления жизненным циклом программы. Исключения, которые нельзя поймать вообще, — это ошибки интерпретатора, например, ошибки сегментации (segmentation fault), которые не являются исключениями Python.

Пример:

try:
    exit()
except SystemExit:
    print("SystemExit пойман")  # Это сработает, но обычно так не делают