Hjem Personlig finansiering Hvordan du håndterer utelukkede unntak i Python - dummies

Hvordan du håndterer utelukkede unntak i Python - dummies

Innholdsfortegnelse:

Video: Python Web Apps with Flask by Ezra Zigmond 2024

Video: Python Web Apps with Flask by Ezra Zigmond 2024
Anonim

Noen ganger må du legge inn en unntakshåndteringsrutine i en annen i en prosess kalt nesting. Når du nester unntakshåndteringsrutiner, forsøker Python å finne en unntakshåndterer i det nestede nivået først og deretter flyttes til de ytre lagene. Du kan hekke unntakshåndteringsrutiner så dypt som nødvendig for å gjøre koden din trygg.

En av de vanligste årsakene til å bruke et dobbeltlag med unntakshåndteringskode er når du vil skaffe innspill fra en bruker og trenger å plassere inngangskoden i en løkke for å sikre at du faktisk får den nødvendige informasjonen. Følgende trinn viser hvordan denne typen kode kan fungere.

1 Åpne et Python-filvindu.

Du ser en redaktør der du kan skrive eksempelkoden.

2Type følgende kode i vinduet - trykk Enter etter hver linje:

TryAgain = True mens TryAgain: prøv: Verdi = int (input ("Skriv et helt tall.")) Bortsett fra ValueError: print må skrive et helt tall! ") Prøv: DoOver = input (" Prøv igjen (y / n)? ") bortsett fra: print (" OK, se neste gang! ") TryAgain = False else: if (str. DoOver) == "N"): TryAgain = False unntatt KeyboardInterrupt: print ("Du presset Ctrl + C!") Print ("Se deg neste gang!") TryAgain = False else: print (Verdi) TryAgain = False > Koden begynner ved å lage en inngangsløype. Bruke sløyfer for denne type formål er faktisk ganske vanlig i applikasjoner fordi du ikke vil at programmet skal avslutte hver gang en inngangsfeil blir gjort. Dette er en forenklet loop, og normalt lager du en egen funksjon for å holde koden.

Når sløyfen starter, ber applikasjonen brukeren å skrive inn et helt tall. Det kan være noe heltall. Hvis brukeren skriver inn en ikke-heltallsverdi eller trykker Ctrl + C, Cmd + C, eller en annen avbrytingsnøkkelkombinasjon, tar overtakelseshåndteringskoden over. Ellers skriver applikasjonen verdien som brukeren har levert, og setter TryAgain til False, noe som fører til at sløyfen slutter.

Et ValueError-unntak kan oppstå når brukeren gjør en feil. Fordi du ikke vet hvorfor brukeren skriver inn feil verdi, må du spørre om brukeren vil prøve igjen. Selvfølgelig, å få mer innspill fra brukeren kan generere et annet unntak. Den indre forsøk … bortsett fra kodeblokken håndterer denne sekundære inngangen.

Merk bruken av str. øverste () funksjon når man får tegninngang fra brukeren. Denne funksjonen gjør det mulig å motta y eller Y som inngang og godta dem begge. Når du spør brukeren om tegninngang, er det en god idé å konvertere små bokstaver til store versjoner, slik at du kan utføre en enkelt sammenligning (reduserer potensialet for feil).

TastaturInterrupt-unntaket viser to meldinger og avsluttes automatisk ved å sette TryAgain to False. KeyboardInterrupt oppstår bare når brukeren trykker på en bestemt tastekombinasjon som er utformet for å avslutte søknaden. Brukeren er usannsynlig at han vil fortsette å bruke programmet på dette tidspunktet.

3Velg Kjør → Kjør modul.

Du ser et Python Shell-vindu åpent. Søknaden ber brukeren å skrive inn et helt tall.

4Type Hei og trykk Enter.

Programmet viser en feilmelding og spør om du vil prøve igjen.

5Type Y og trykk Enter.

Programmet ber deg om å skrive inn et helt tall igjen.

6Type 5. 5 og trykk Enter.

Programmet viser igjen feilmeldingen og spør om du vil prøve igjen.

7Trykk Ctrl + C, Cmd + C, eller en annen tastekombinasjon for å avbryte programmet.

Søknaden avsluttes. Legg merke til at meldingen er den fra det indre unntaket. Søknaden kommer aldri til det ytre unntaket fordi den interne unntakshandleren gir generisk unntakshåndtering.

8Velg Kjør → Kjør modul.

Du ser et Python Shell-vindu åpent. Søknaden ber brukeren å skrive inn et helt tall.

9Trykk Ctrl + C, Cmd + C, eller en annen tastekombinasjon for å avbryte programmet.

Søknaden avsluttes. Legg merke til at meldingen er den fra det ytre unntaket. I de preious trinnene avslutter brukeren programmet ved å trykke på en avbrytingsnøkkel. Imidlertid bruker programmet to forskjellige unntakshandlere for å løse problemet.

Hvordan du håndterer utelukkede unntak i Python - dummies

Redaktørens valg

Topp 5 Fantasy Baseball Sites - Dummies

Topp 5 Fantasy Baseball Sites - Dummies

Hvis du er en stor fantasy baseball fan og ser ut til å bli med i verden av online fantasy sport, så se ikke lenger. Følgende liste inneholder de fem beste fantasybaseball-nettstedene i henhold til nettstedslayout, oppdatert statistikk, utenfor råd og hjelp og teamstyringsalternativer.

Hva skal man gjøre som en baseball coach - dummies

Hva skal man gjøre som en baseball coach - dummies

Som en baseball trener, du ikke bare må lede teamet ditt, du må ta med forsyninger for å praktisere. Du vil kanskje øke følgende liste, men den inneholder grunnleggende for å få til alle baseballpraksis: Riktig lager førstehjelpsutstyr Ekstra vann Øvelsesplan for dagen, oppdelt etter tid ...

Får utrustet til å spille baseball - dummies

Får utrustet til å spille baseball - dummies

Når du tar baseballfeltet, bør du ta med det beste utstyret som er tilgjengelig. Du trenger ikke å bruke store summer til å kjøpe toppkvalitets tilbehør så lenge du vet hva du skal se etter og hvor du skal finne den. Med mindre du er under 10 år, kjøp utstyr som oppfyller alle de store ligaspesifikasjonene. ...

Redaktørens valg

Hvordan du finner ditt nivå av oppmerksomhet - dummies

Hvordan du finner ditt nivå av oppmerksomhet - dummies

Du kan sikkert ta noen form for ikke-tradisjonell trening og dump det i en tønne merket "mind-body. "Det er greit hvis du foretrekker enkelhet og ikke vil bli innpakket med kategorisering og vurdering. Men du kan også kikke på treningsprogrammer på et dypere nivå, vurdere omfanget av oppmerksomhet i en ...

Hvordan du får mest mulig ut av din meditasjon - dummies

Hvordan du får mest mulig ut av din meditasjon - dummies

For å få mest mulig ut av meditasjonspraksis må forplikte seg til det. Når du begynner å meditere regelmessig, kan du høste utallige fordeler - fra lavere stress og kolesterol til høyere nivåer av tilfredshet og lykke. Her er noen tips for å maksimere meditasjonspraksis: Meditere jevnlig - helst hver dag. Sett bort en ...

Redaktørens valg

Slik bruker du det nye perspektivet i Adobe Illustrator CS6 - dummies

Slik bruker du det nye perspektivet i Adobe Illustrator CS6 - dummies

I Adobe Illustrator CS6 Du kan opprette og redigere kunstverk basert på perspektivgitterfunksjonen (introdusert i CS5). Gitteret er en stor hjelp i å skape vellykkede perspektivillustrasjoner. For å vise eller skjule standardperspektivruten, trykk Ctrl + Shift + I (Windows) eller Kommando + Skift + I (Mac). Du kan bruke verktøyet Perspective Grid på verktøylinjen til å ...

Hvordan å pakke inn tekst ved hjelp av AdobeCS5 Illustrator - dummies

Hvordan å pakke inn tekst ved hjelp av AdobeCS5 Illustrator - dummies

Ved hjelp av en tekstbrytestil i Adobe Creative Suite 5 (Adobe CS5) Illustrator-prosjektet er en enkel måte å legge til litt kreativitet. En tekstpakke tvinger tekst til å vikle rundt en grafikk.

Hvordan du bruker Life Paint-funksjonen i Adobe Illustrator CS6 - dummies

Hvordan du bruker Life Paint-funksjonen i Adobe Illustrator CS6 - dummies

Ikke bekymre deg om å fylle lukkede figurer eller la filler flykte fra objekter med hull i uønskede områder. Ved å bruke Live Paint-funksjonen til Adobe Illustrator CS6, kan du lage det bildet du ønsker og fylle ut regioner med farge. Live Paint-bøtta registrerer automatisk regioner som er sammensatt av uavhengige kryssende baner og fyller dem tilsvarende. Malingen ...