Polecenia wyjścia w języku Python: Quit(), exit(), sys.exit() i os._exit()

Funkcje Quit(), exit(), sys.exit() i os._exit() mają prawie taką samą funkcjonalność, ponieważ zgłaszają wyjątek SystemExit, w wyniku którego interpreter Pythona kończy działanie i nie jest drukowane żadne śledzenie stosu. Możemy przechwycić wyjątek, aby przechwycić wcześniejsze wyjścia i wykonać czynności porządkowe; jeśli nie zostanie złapany, tłumacz wychodzi jak zwykle. W tym artykule zobaczymy, jak wyjść z Pyton program.

Co to są polecenia wyjścia w Pythonie?

Polecenia wyjścia w języku Python odnoszą się do metod lub instrukcji używanych do zakończenia wykonywania programu w języku Python lub wyjścia z interpretera języka Python. Do powszechnie używanych poleceń wyjścia zalicza się ` sys.exit() `, ` Wyjście() ` i ` zrezygnować() `. Polecenia te zatrzymują program lub interpreter, pozwalając użytkownikowi na bezpieczne zakończenie wykonywania. w Pythonie jest kilka poleceń umożliwiających wyjście. Omawiamy je w skrócie. Polecenia są następujące

  • exit() w Pythonie
  • exit() w Pythonie
  • sys.exit() przy użyciu Pythona
  • os._exit() w Pythonie

Notatka : W trybie interaktywnym (uruchamiając Python w terminalu) zazwyczaj możesz wyjść, wpisując exit()> Lub quit()> bez nawiasów.

Polecenie wyjścia w języku Python przy użyciu funkcji Quit().

The zrezygnować() funkcja działa jako polecenie wyjścia w Pythonie, jeśli tylko moduł witryny jest zaimportowany, więc nie należy jej używać w kodzie produkcyjnym. Kod produkcyjny oznacza, że ​​kod jest używany przez zamierzoną publiczność w rzeczywistej sytuacji. Tej funkcji należy używać wyłącznie w interpreterze. Zgłasza wyjątek SystemExit za kulisami. Jeśli go wydrukujesz, wyświetli się komunikat i zakończy działanie programu w Pythonie.

Przykład: W podanym kodzie, kiedy i> jest równa 5, wypisuje zrezygnować i próbuje wyjść z interpretera Pythona za pomocą quit()> funkcjonować. Jeśli i> nie jest równa 5, wypisuje wartość i> .

Python3




for> i> in> range> (> 10> ):> > if> i> => => 5> :> > print> (quit)> > quit()> > print> (i)>

Wyjście:

0 1 2 3 4 Use quit() or Ctrl-D (i.e. EOF) to exit 

Polecenie wyjścia Pythona za pomocą Funkcja wyjścia().

Funkcja exit() w Pythonie jest zdefiniowana jako komenda wyjścia w Pythonie, jeśli jest w site.py i działa tylko wtedy, gdy zaimportowany jest moduł witryny, więc powinna być używana tylko w interpreterze. Jest to jakby synonim funkcji Quit(), dzięki czemu Python jest bardziej przyjazny dla użytkownika. To także daje komunikat po wydrukowaniu i kończy program w Pythonie.

Przykład : W podanym kodzie, kiedy i> jest równa 5, wypisuje Wyjście i próbuje wyjść z interpretera Pythona za pomocą exit()> funkcjonować. Jeśli i> nie jest równa 5, wypisuje wartość i> .

Python3




for> i> in> range> (> 10> ):> > if> i> => => 5> :> > print> (exit)> > exit()> > print> (i)>

Wyjście:

0 1 2 3 4 Use exit() or Ctrl-D (i.e. EOF) to exit 

sys.exit([arg]) przy użyciu Pythona

W przeciwieństwie do Quit() i exit(), sys.exit() jest uważana za komendę wyjścia w Pythonie, jeśli zawsze jest dostępna w kodzie produkcyjnym modułu sys. Opcjonalny argument arg może być liczbą całkowitą dającą wyjście lub obiekt innego typu. Jeśli jest to liczba całkowita, zero uważa się za pomyślne zakończenie.
Notatka: Do metody sys.exit() można także przekazać ciąg znaków.

Przykład: W podanym kodzie, sys.exit('Age less than 18')> line zakończy skrypt Pythona komunikatem Wiek poniżej 18 lat jeśli zmienna age> jest mniejsza niż 18. Jeśli age> wynosi 18 lub więcej, zostanie wydrukowany Wiek nie mniej niż 18 lat. Kod ten służy do wyjścia ze skryptu z określonym komunikatem, gdy spełniony zostanie określony warunek. I zatrzymuje program w Pythonie.

Python3




import> sys> age> => 17> if> age <> 18> :> > sys.exit(> 'Age less than 18'> )> else> :> > print> (> 'Age is not less than 18'> )>

Wyjście:

An exception has occurred, use %tb to see the full traceback. SystemExit: Age less than 18 

os._exit(n) w Pythonie

The os._exit() Metoda w Pythonie służy do kończenia procesu z określonym statusem bez wywoływania programów obsługi czyszczenia, opróżniania buforów stdio itp.

Notatka: Ta metoda jest zwykle używana w procesie potomnym po wywołaniu systemowym os.fork(). Standardowym sposobem wyjścia z procesu jest metoda sys.exit(n).

Przykład : W tym przykładzie poniższy kod Pythona tworzy relację procesu rodzic-dziecko za pomocą os.fork()> . Proces nadrzędny czeka na zakończenie procesu potomnego i pobiera swój kod zakończenia, podczas gdy proces potomny drukuje komunikat i kończy działanie z kodem statusu powodzenia.

Python3




import> os> pid> => os.fork()> if> pid>> 0> :> > > print> (> ' In parent process'> )> > info> => os.waitpid(pid,> 0> )> > if> os.WIFEXITED(info[> 1> ]) :> > code> => os.WEXITSTATUS(info[> 1> ])> > print> (> 'Child's exit code:'> , code)> > else> :> > print> (> 'In child process'> )> > print> (> 'Process ID:'> , os.getpid())> > print> (> 'Hello ! Geeks'> )> > print> (> 'Child exiting..'> )> > > os._exit(os.EX_OK)>

Wyjście:

In child process Process ID: 25491 Hello ! Geeks Child exiting.. In parent process Child's exit code: 0 

Wniosek

Spośród powyższych czterech funkcji wyjścia, preferowana jest sys.exit() głównie dlatego, że funkcji exit() i Quit() nie można używać w kodzie produkcyjnym, podczas gdy funkcja os._exit() jest przeznaczona tylko do specjalnych przypadków, gdy wymagane jest natychmiastowe wyjście.