Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Часто в процессе написания программ на Python возникает ситуация, когда необходимо ранее завершить работу скрипта. Такое может потребоваться, например, при обнаружении критической ошибки, которая не позволяет продолжить выполнение программы.
Рассмотрим пример. Допустим, в коде программы предусмотрена проверка наличия файла данных на диске. Если файл отсутствует, то продолжать выполнение программы не имеет смысла и требуется ее завершить.
import os if not os.path.exists('data.txt'): # здесь нужно завершить работу скрипта
В Python для раннего завершения работы скрипта можно использовать функцию exit()
из модуля sys
. Эта функция принимает один необязательный аргумент — статус завершения, который по умолчанию равен нулю. Если вызвать функцию без аргумента или с аргументом 0
, то это будет воспринято как успешное завершение работы скрипта. Любое другое значение аргумента будет воспринято как код ошибки.
Вот как можно доработать пример выше с использованием exit()
:
import os import sys if not os.path.exists('data.txt'): print('Файл данных не найден') sys.exit(1)
Теперь, если при выполнении этого скрипта файл data.txt
не будет найден, то скрипт завершит свою работу, и код возврата будет равен 1
. Этот код можно будет использовать для обработки ошибки в других скриптах или системных утилитах.
Важно помнить, что sys.exit()
вызывает исключение SystemExit
, которое можно перехватить. Если никто не перехватывает это исключение, то Python завершает работу. Если же исключение перехвачено, то функция exit()
не вызывает завершение работы интерпретатора.
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Добавить комментарий