3 maneiras de encerrar um programa em Python

Links Rápidos

Saber como encerrar um programa é importante e pode ser útil em vários cenários. Por exemplo, se você estiver criando um jogo simples, poderá sair mediante uma entrada específica do usuário ou quando uma determinada condição for atendida. Descubra as diferenças entre as três maneiras de interromper um programa Python.

1. Usando quit() ou exit()

Uma das maneiras mais simples de encerrar um programa Python é usar um dos métodos integrados, quit() ou exit(). Quando você chama quit() ou exit(), o programa será encerrado.

As funções quit() e exit() fazem exatamente a mesma coisa, é apenas uma questão de preferência pessoal que você usa.

Veja como você pode usar a função quit() para encerrar um programa Python:

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

O programa de exemplo acima imprimirá números inteiros de 0 a 8 no console. Quando num for 9, o programa será encerrado. Você também pode usar o comando quit() para sair do Python Integrated Development and Learning Environment (IDLE), que permite executar scripts Python interativamente.

  Como implementar rolagem infinita em um aplicativo da Web

Observe que quit() e exit() dependem do módulo site, portanto você não deve usá-los em ambientes de produção. O próximo método, sys.exit(), é uma opção melhor.

2. Usando sys.exit()

Quando você chama sys.exit() em seu programa, Python gera uma exceção SystemExit. Aceita um argumento opcional para especificar um código de saída inteiro (0 por padrão). Você também pode passar um objeto que resultará em um código de saída 1 e imprimirá o valor da string do objeto com erro padrão.

 import sys 

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

A saída do programa será a seguinte:

Assim como os métodos quit e exit, sys.exit() também gera uma exceção SystemExit. Isso significa que você pode chamar sys.exit() ou aumentar SystemExit(). Ambos aceitam um argumento opcional.

  Como tirar uma captura de tela do iPhone sem botões

Você deve aprender sobre as funções mais importantes do Python se não entender como funciona o código acima.

3. Usando os._exit()

A terceira forma de sair de um programa é o método especial os._exit(). Você pode passar um argumento opcional para especificar um código de status de saída. os._exit() vem do módulo os e encerra o processo imediatamente sem realizar as atividades normais de limpeza que ocorrem quando um programa Python é encerrado.

Como esta função é encerrada sem realizar a limpeza normal, você só deve usá-la em casos especiais. De acordo com Documentação Pythonum bom exemplo está em um processo filho após uma bifurcação (um novo processo criado usando os.fork()).

Aqui está um exemplo de como usar a função os._exit() para encerrar um programa:

 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()

O código acima produzirá o seguinte:

  8 melhores softwares de monitoramento Java para empresas [2023]

Qual método você deve usar para encerrar um programa em Python?

Python fornece vários métodos para encerrar um programa. No entanto, a maioria desses métodos faz a mesma coisa. Isso deve reduzir a carga de tomada de decisão se você precisar adicionar um mecanismo de saída ao seu programa ao aprender Python.

Em resumo, sys.exit() deve ser seu método preferido para encerrar um programa em Python. Ele gera uma exceção SystemExit com um código de saída opcional.

Os métodos quit() e exit() são mais apropriados ao usar o Python REPL. Você deve evitá-los em produção porque dependem do módulo do site, que pode nem sempre estar disponível. Você raramente precisará usar os._exit(), a menos que esteja trabalhando com código que bifurca processos.