Рубрики
Без рубрики

Разница между выходом () и Sys.exit () в Python

Проблема: в Python есть два аналогичных именованных функции в Python, выход () и Sys.exit (). В чем разница между ними, и когда я должен использовать один над другим? Вступление В отличие от языков программирования, такие как C, в Python нет основного () метода в Python. Таким образом, когда мы запускаем программу в Python, мы по существу выполняем весь код на верхнем уровне … Разница между выходом () и Sys.exit () в Python Подробнее »

Автор оригинала: Shubham Sayon.

Проблема: В Python есть две аналогично именованные функции, Выход () и sys.exit () Отказ В чем разница между ними, и когда я должен использовать один над другим?

Вступление

В отличие от языков программирования, как C, нет Главная () Метод в Python. Таким образом, когда мы запускаем программу в Python, мы по сути, мы выполняем весь код в файле верхнего уровня, то есть сверху вниз. Сценарии обычно выходят на себя, когда Python падает в конце документа, но мы также можем также позвонить для выхода программы, незнавающе с помощью команд выхода. В этом руководстве мы узнаем о двух разных командах выхода в Python – Выход () и sys.exit () Отказ Мы также узнаем разницу между Выход () и sys.exit () Отказ

💡 Когда и почему нам нужен команды выхода () в Python?

Когда вы реализуете программу в Python, код выполняется последовательно до конца. Тем не менее, могут возникнуть случаи, когда нам требуется, чем будет заканчиваться программой раньше, чем ожидалось. Именно здесь разные команды выхода заходят на картинку.

Хотя Python – это простой язык программирования, иногда он может получить небольшой комплекс. Одним из таких случаев является использование различных сортов команд выхода в Python.

⛔ Выход () | Питон

Выход () Простое заканчивается выполнением кода Python/Script. Код, который следует после этого Выход () команда не будет выполнена.

Примечание:

  • Вы можете думать о Выход () как псевдоним для Quit () (или вице-версия) в Python. Они просто сосуществуют, чтобы сделать Python более удобный для пользователя. Тем не менее, это не очень хорошая практика для использования Quit () и Выход () В производственном кодексе и должны быть зарезервированы только для использования в переводчике.
  • Выход () Команда генерирует следующее сообщение при напечатании:

    • Используйте EXIT () или CTRL-D (I.E. EOF) для выхода
  • Пример :
for no in range(15, 30):
    if no > 25:
        print("\n", exit)  # printing the exit message
        # When the value of no becomes 10 then the program is forced to exit
        exit()
    print(no, end=" ")

Выход:

15 16 17 18 19 20 21 22 23 24 25 
 Use exit() or Ctrl-Z plus Return to exit

Объяснение: Как только нет больше чем 25 , Выход () Способ выполняется, и программа завершается после печати сообщения выхода.

⛔ sys.exit () | Питон

Вы можете позвонить в sys.exit () Чтобы выйти из кода Python с состоянием выхода AS arg Отказ arg (аргумент) может быть что-нибудь вроде целочисленного или другого объекта – arg по умолчанию для Ноль , что указывает на успешное прекращение. Вы можете установить arg на ненулевое значение для обозначения ненормального прекращения кода.

#Trivia:

  • Когда мы используем sys.exit () Команда, это поднимает встроенный SystemExit Исключение. Вдоль этих строк вы можете уловить его как обычно, чтобы заблокировать ранние выходы и выполнять меры очистки при необходимости.
  • sys.exit (ы) можно считать так же, как стенана для Поднять системуExit (ы)
import sys
try:
    sys.exit()
    print("This Line won't be Executed!")
except SystemExit:
    print("SystemExit Exception terminated the program!")
finally:
    print("Perform Cleanup Activities!")

Выход:

SystemExit Exception terminated the program!
Perform Cleanup Activities!

Теперь давайте посмотрим на пример, чтобы получить sys.exit () Метод в Python.

Пример:

import sys
num = int(input("Enter a number: "))
if num < 20:
    # exits the program
    sys.exit("Exiting! The number is less than 20.")
else:
    print("Number = ", num)

Выход:

Enter a number: 5
Exiting! The number is less than 20.

Объяснение: Как только пользовательский ввод менее 20, sys.exit () Команда выполняется, которая печатает arg Как статус выхода, то есть, ” Выход! Число меньше 20.

✨ Разница между выходом () и Sys.exit ()

➥ не следует использовать при работе с производственным кодом. ➥ Это может быть использовано в переводчике. ➥ sys.exit () – хороший вариант, если вы имеете дело с производственным кодом.
➥ Выход () относится к модулю Site.py и работает только в том случае, если модуль сайта импортируется / настоящее. ➥ Модуль сайта автоматически импортируется во время запуска, за исключением того, что используется параметр командной строки -s. ➥ SYS модуль всегда доступен, что делает Sys.exit () лучший и удобный вариант.

Теперь давайте посмотрим на пример, который уточняет вещи дальше.

➥ Пример

В следующем примере вы столкнетесь с парой функций:

  • foo () – используется для демонстрации принципа работы sys.exit ()
  • func () – используется для демонстрации принципа работы выход()
import sys


def foo():
    try:
        print("Demonstrating sys.exit()")
        sys.exit()
        print("This line will not be executed!")
    except SystemExit:
        # argument denoting exit status
        print("Abnormal Termination! Encountered SystemExit")


def func():
    print("Demonstrating exit()")
    print(exit)
    exit()  # lines after this statement are ignored and are not executed
    print("The previous command executes ignoring all the lines after the command")


# Calling both the function:
foo()
print()
func()

Выход:

Demonstrating sys.exit()
Abnormal Termination! Encountered SystemExit

Demonstrating exit()
Use exit() or Ctrl-Z plus Return to exit

Объяснение:

  • Внутри foo () Линия 8 игнорируется, потому что Python столкнулся с sys.exit () Отказ В результате контроль перемещался на кроме Блок и отображалось пользовательское сообщение об ошибке.
  • Внутри func () Линия 18 не была выполнена, поскольку Python столкнулся с Выход () Метод и программа была прекращена.

🤔 Обычно заданный вопрос: разница между выходом (0) и выходом (1) в Python?

Выход (0) Обозначает успешный выход программы/скрипта без возникновения любых ошибок/проблем, то есть.; Это означает Успешное исполнение Отказ Напротив, ненулевой выход как Выход (1) обозначает ненормальное прекращение кода. Время от времени коды ошибок также могут означать тип проблемы с проблемой, что приводит к резкому прекращению скрипта.

Заключение

Чтобы обобщить эту дискуссию, вы должны помнить, что sys.exit () более элегантный, а SystemExit Исключение будет брошено после звонка. Выход () Команда резко завершает скрипт Python, а остальные утверждения не выполняются.

💡 Читайте здесь: Как исправить TypeError: не может умножить последовательность нельзя int типа «Float» в Python?

Я надеюсь, что эта статья помогла вам понять разницу между sys.exit () и Выход () в питоне. Пожалуйста, Подписаться и Оставайтесь настроиться Для более интересных учебных пособий. Счастливое обучение! 🐍

Спасибо Раши Агарваль Чтобы помочь мне статью!

  • Вы хотите быстро освоить самые популярные Python IDE?
  • Этот курс приведет вас от новичка к эксперту в Пычарме в ~ 90 минут.
  • Для любого разработчика программного обеспечения имеет решающее значение для освоения IDE хорошо, писать, тестировать и отлаживать высококачественный код с небольшим усилием.

Присоединяйтесь к Pycharm MasterClass Сейчас и мастер Pycharm на завтра!

Я профессиональный Python Blogger и Content Creator. Я опубликовал многочисленные статьи и создал курсы в течение определенного периода времени. В настоящее время я работаю полный рабочий день, и у меня есть опыт в областях, таких как Python, AWS, DevOps и Networking.

Вы можете связаться со мной @:

Оригинал: “https://blog.finxter.com/difference-between-exit-and-sys-exit-in-python/”