Funktionerne quit(), exit(), sys.exit() og os._exit() har næsten den samme funktionalitet, da de rejser SystemExit-undtagelsen, hvorved Python-fortolkeren afslutter, og ingen stack-traceback udskrives. Vi kan fange undtagelsen til at opsnappe tidlige udgange og udføre oprydningsaktiviteter; hvis den ikke bliver fanget, går tolken ud som normalt. I denne artikel vil vi se, hvordan du forlader Python program.
Hvad er Python Exit-kommandoer?
Exit-kommandoer i Python henviser til metoder eller sætninger, der bruges til at afslutte udførelsen af et Python-program eller afslutte Python-fortolkeren. De almindeligt anvendte exit-kommandoer inkluderer ` sys.exit() `, ` Afslut() `, og ` Afslut() `. Disse kommandoer standser programmet eller tolken, hvilket giver brugeren mulighed for at afslutte udførelsen. der er nogle kommandoer i Python til exit her diskuterer vi disse kommandoer kort, kommandoerne er følgende
- quit() i Python
- exit() i Python
- sys.exit() ved hjælp af Python
- os._exit() i Python
Bemærk : I interaktiv tilstand (kører Python i terminalen), kan du typisk afslutte ved at skrive
exit()>
ellerquit()>
uden parentes.
Python Exit-kommando ved hjælp af quit()-funktionen
Det Afslut() funktion fungerer som en exit-kommando i Python, hvis kun hvis sitemodulet er importeret, så det ikke skal bruges i produktionskoden. Produktionskode betyder, at koden bliver brugt af det tilsigtede publikum i en virkelig verden. Denne funktion bør kun bruges i tolken. Det rejser SystemExit-undtagelsen bag kulisserne. Hvis du udskriver det, vil det give en besked og afslutte et program i Python.
b+ træ
Eksempel: I den medfølgende kode, hvornåri>
er lig med 5, udskriver den Afslut og forsøger at forlade Python-fortolkeren ved hjælp af quit()>
fungere. Hvisi>
er ikke lig med 5, udskriver den værdien afi>
.
Python3
for> i> in> range> (> 10> ):> > if> i> => => 5> :> > print> (quit)> > quit()> > print> (i)> |
>
10 i potens 6
>
Produktion:
0 1 2 3 4 Use quit() or Ctrl-D (i.e. EOF) to exit>
Python Exit Command vha exit() Funktion
Exit() i Python er defineret som exit-kommandoer i python if i site.py, og det virker kun, hvis sitemodulet er importeret, så det bør kun bruges i fortolkeren. Det er som et synonym for quit() for at gøre Python mere brugervenlig. Det giver også en besked, når den udskrives, og afslutter et program i Python.
Eksempel : I den medfølgende kode, hvornåri>
er lig med 5, udskriver den Afslut og forsøger at forlade Python-fortolkeren ved hjælp af exit()>
fungere. Hvisi>
er ikke lig med 5, udskriver den værdien afi>
.
Python3
smukkeste smil
for> i> in> range> (> 10> ):> > if> i> => => 5> :> > print> (exit)> > exit()> > print> (i)> |
>
>
Produktion:
0 1 2 3 4 Use exit() or Ctrl-D (i.e. EOF) to exit>
sys.exit([arg]) ved hjælp af Python
I modsætning til quit() og exit(), betragtes sys.exit() som exit-kommandoer i python, hvis god til at blive brugt i produktionskoden til sys-modulet altid er tilgængelig. Det valgfrie argument arg kan være et heltal, der giver exit eller en anden type objekt. Hvis det er et heltal, nul anses for vellykket opsigelse.
Bemærk: En streng kan også sendes til sys.exit() metoden.
Eksempel: I den givne kode er sys.exit('Age less than 18')>
linje vil afslutte Python-scriptet med en besked Alder under 18 hvis variablenage>
er mindre end 18. Hvisage>
er 18 eller større, udskrives den Alder er ikke mindre end 18. Denne kode bruges til at afslutte scriptet med en specifik besked, når en bestemt betingelse er opfyldt. Og det stopper et program i Python.
Python3
import> sys> age> => 17> if> age <> 18> :> > sys.exit(> 'Age less than 18'> )> else> :> > print> (> 'Age is not less than 18'> )> |
pandas standardafvigelse
>
>
Produktion:
An exception has occurred, use %tb to see the full traceback. SystemExit: Age less than 18>
os._exit(n) i Python
Det os._exit() metode i Python bruges til at afslutte processen med specificeret status uden at kalde oprydningshandlere, skylle stdio-buffere osv.
Bemærk: Denne metode bruges normalt i den underordnede proces efter os.fork() systemkald. Standardmetoden til at afslutte processen er sys.exit(n)-metoden.
Eksempel : I dette eksempel opretter nedenstående Python-kode et forældre-barn-procesforhold ved hjælp af os.fork()>
. Den overordnede proces venter på, at den underordnede proces afsluttes og henter dens afslutningskode, mens den underordnede proces udskriver en besked og afslutter med en statuskode for succes.
Python3
hvad betyder dette xd
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)> |
>
>
Produktion:
In child process Process ID: 25491 Hello ! Geeks Child exiting.. In parent process Child's exit code: 0>
Konklusion
Blandt de ovennævnte fire exit-funktioner foretrækkes sys.exit() for det meste, fordi funktionerne exit() og quit() ikke kan bruges i produktionskoden, mens os._exit() kun er til særlige tilfælde, når den øjeblikkelige exit er påkrævet.