3 начина да прекратите програма в Python

бързи връзки

Да знаете как да прекратите програма е важно и може да бъде полезно в различни сценарии. Например, ако създавате проста игра, можете да излезете при конкретен потребителски вход или когато е изпълнено определено условие. Открийте разликите между трите начина за спиране на програма на Python.

1. Използване на quit() или exit()

Един от най-простите начини за прекратяване на програма на Python е да използвате някой от вградените методи, quit() или exit(). Когато извикате quit() или exit(), програмата ще приключи.

Функциите quit() и exit() правят абсолютно едно и също нещо, това е просто въпрос на лични предпочитания, които използвате.

Ето как можете да използвате функцията quit(), за да прекратите програма на Python:

 for num in range(10):
    if num == 9:
        quit()
    print(num)

Примерната програма по-горе ще отпечата цели числа от 0 до 8 на конзолата. След като num стане 9, програмата излиза. Можете също да използвате командата quit(), за да излезете от Python Integrated Development and Learning Environment (IDLE), която ви позволява да изпълнявате Python скриптове интерактивно.

  Как да промените полетата в Google Docs

Имайте предвид, че както quit(), така и exit() разчитат на модула на сайта, така че не трябва да ги използвате в производствени среди. Следващият метод, sys.exit(), е по-добър вариант.

2. Използване на sys.exit()

Когато извикате sys.exit() във вашата програма, Python предизвиква SystemExit изключение. Той приема незадължителен аргумент за указване на целочислен изходен код (0 по подразбиране). Можете също така да подадете обект, който ще доведе до изходен код 1 и ще отпечата стойността на низа на обекта до стандартна грешка.

 import sys 

for num in range(10):
    if num == 5:
        sys.exit("You exited the program")
    print(num)

Резултатът от програмата ще бъде както следва:

  Направете своето търсене в WordPress мощно с Algolia и 9 други

Подобно на методите за излизане и излизане, sys.exit() също предизвиква изключение SystemExit. Това означава, че можете да извикате sys.exit() или да повдигнете SystemExit(). И двете приемат незадължителен аргумент.

Трябва да научите за най-важните функции на Python, ако не разбирате как работи горният код.

3. Използване на os._exit()

Третият начин за излизане от програма е специалният метод os._exit(). Можете да му предадете незадължителен аргумент, за да посочите код за състояние на изход. os._exit() идва от модула os и незабавно прекратява процеса, без да извършва нормалните дейности по почистване, които се случват, когато програмата на Python излезе.

Тъй като тази функция излиза без извършване на нормално почистване, трябва да я използвате само в специални случаи. Според Документация на Pythonдобър пример е в дъщерен процес след fork (нов процес, създаден с помощта на os.fork()).

Ето пример как да използвате функцията os._exit(), за да прекратите програма:

 import os
import sys

def child_process():
    print("Child process is running.")
    os._exit(0)

def main():
    print("Parent process is running.")

    try:
        pid = os.fork()

        if pid == 0:
            
            child_process()
        else:
            
            print(f"Parent process is continuing with child process PID: {pid}")
    except OSError as e:
        print(f"Fork failed: {e}")
        sys.exit(1)

    print("Parent process is done.")

if __name__ == "__main__":
    main()

Горният код ще изведе следното:

  Месечни периодични приходи (MRR) обяснени за 5 минути или по-малко

Кой метод трябва да използвате, за да прекратите програма в Python?

Python предоставя различни методи за завършване на програма. Повечето от тези методи обаче правят същото. Това трябва да намали тежестта на вземането на решения, ако трябва да добавите механизъм за изход към вашата програма, когато изучавате Python.

В обобщение, sys.exit() трябва да бъде вашият метод за приключване на програма в Python. Той поражда изключение SystemExit с незадължителен код за изход.

Методите quit() и exit() са по-подходящи, когато използвате Python REPL. Трябва да ги избягвате в производството, защото те зависят от модула на сайта, който може да не винаги е наличен. Рядко трябва да използвате os._exit(), освен ако не работите с код, който разклонява процеси.