de-vraag
  • Klausimai
  • Žymos
  • Vartotojai
Pranešimai
Apdovanojimai
Registracija
Užsiregistravę gausite pranešimus apie atsakymus ir komentarus į savo klausimus.
Prisijungti
Jei jau turite paskyrą, prisijunkite ir patikrinkite naujus pranešimus.
Už pridėtus klausimus, atsakymus ir komentarus bus skiriami apdovanojimai.
Daugiau
Šaltinis
Redaguoti
 Teifion
Teifion
Question

Python scenarijaus užbaigimas

Žinau apie PHP komandą die(), kuri anksčiau laiko sustabdo scenarijų.

Kaip galėčiau tai padaryti Pythone?

973 2008-09-16T15:35:55+00:00 3
Lightness  Races with Monica
Lightness Races with Monica
Redaguotas klausimas priešpietr balandis 2016 в 2:21
Programavimas
termination
python
Šis klausimas turi 1 atsakymas atsakymų anglų kalba, norėdami juos perskaityti prisijunkite prie savo paskyros.
Solution / Answer
 pjz
pjz
popietr rugsėjis 2008 в 3:36
2008-09-16T15:36:36+00:00
Daugiau
Šaltinis
Redaguoti
#8464085
import sys
sys.exit()

informacija iš sys modulio dokumentacijos:

sys.exit([arg])

Išėjimas iš Python. Tai įgyvendinama iškeliant SystemExit išimtį, todėl valymo veiksmai, nurodyti finally straipsniuose `try teiginiuose, yra vykdomi, ir galima perimti išėjimo bandymą išoriniame lygmenyje.

Neprivalomas argumentas arg gali būti sveikasis skaičius, nurodantis išėjimo būseną (pagal nutylėjimą lygus nuliui) arba kito tipo objektas. Jei jis yra sveikasis skaičius, nulis laikomas "sėkmingu užbaigimu", o bet kokia nenulinė reikšmė yra laikoma "nenormaliu užbaigimu", kai naudojamos kriauklės ir panašūs įrenginiai. Dauguma sistemų reikalauja, kad jis būtų iš intervalo 0-127, ir pateikia neapibrėžtus rezultatus priešingu atveju. Kai kuriose sistemose galioja konvencija, pagal kurią priskiriamas konkretus reikšmes konkretiems išėjimo kodams, tačiau paprastai tai yra nepakankamai išvystytos; Unix programose komandinės eilutės sintaksei paprastai naudojamas 2 klaidoms ir 1 visoms kitoms klaidoms. Jei kitas objekto tipas yra perduodamas, None yra lygiavertis nulio perdavimui, o bet koks kitas objektas yra išvedamas į stderr ir gaunamas išėjimo kodas 1. Visų pirma, sys.exit("koks nors klaidos pranešimas") yra greitas būdas užbaigti programą, kai įvyksta klaida.

Kadangi `exit() galiausiai "tik" iškelia išimtį, tai išėjimas bus tik procesą, kai jis iškviečiamas iš pagrindinio srauto, o išimtis nėra neperimama.

Atkreipkite dėmesį, kad tai yra 'gražus' išėjimo būdas. @glyphtwistedmatrix toliau nurodo, kad jei norite 'kieto išėjimo', galite naudoti os._exit(errorcode), nors tai'greičiausiai'tam tikru mastu priklauso nuo os (pavyzdžiui, gali būti, kad jis nepriima klaidos kodo po windows), ir jis tikrai yra mažiau draugiškas, nes neleidžia interpretatoriui atlikti jokio valymo prieš procesui mirštant.

 Community
Community
Redaguotas atsakymas popietr gegužė 2017 в 12:34
1298
0
 Vhaerun
Vhaerun
popietr rugsėjis 2008 в 3:37
2008-09-16T15:37:13+00:00
Daugiau
Šaltinis
Redaguoti
#8464086

Kitas būdas:

raise SystemExit
Jérôme Verstrynge
Jérôme Verstrynge
Redaguotas atsakymas popietr rugsėjis 2011 в 8:52
116
0
 cleg
cleg
popietr rugsėjis 2008 в 3:38
2008-09-16T15:38:28+00:00
Daugiau
Šaltinis
Redaguoti
#8464087
from sys import exit
exit()

Kaip parametrą galite perduoti išėjimo kodą, kuris bus grąžintas OS. Numatytoji reikšmė yra 0.

 larsks
larsks
Redaguotas atsakymas priešpietr gegužė 2012 в 12:46
27
0
Pridėti klausimą
Kategorijos
Visi
Technologijos
Kultūra / poilsis
Gyvenimas / Menai
Mokslas
Profesionalus
Verslas
Vartotojai
Visi
Naujas
Populiarus
1
Elena Nudel
Registruota prieš 8 valandas
2
firdaus faizal
Registruota prieš 10 valandų
3
Виталий Теслюк
Registruota prieš 2 dienas
4
shokir qochqorov
Registruota prieš 2 dienas
5
Roxana Elizabeth CASTILLO Avalos
Registruota prieš 1 savaitę
DA
DE
EL
ES
FI
FR
ID
IT
JA
LT
LV
NL
PL
PT
RU
SL
SV
TR
ZH
© de-vraag 2022
Šaltinis
stackoverflow.com
pagal licenciją cc by-sa 3.0 nurodant autorystę