Indholdsfortegnelse:
- 1Open et Python fil vindue.
- 2Type følgende kode i vinduet - tryk Enter efter hver linje:
- Du ser et Python Shell vindue åbent. Ansøgningen beder brugeren om at indtaste et helt tal.
- Programmet viser en fejlmeddelelse og spørger, om du vil prøve igen.
- Programmet beder dig indtaste et helt tal igen.
- Programmet viser igen fejlmeddelelsen igen og spørger, om du vil prøve igen.
- Ansøgningen slutter. Bemærk, at meddelelsen er den fra den indvendige undtagelse. Ansøgningen kommer aldrig til den ydre undtagelse, fordi den indre undtagelseshåndterer giver generisk undtagelseshåndtering.
- Du ser et Python Shell vindue åbent. Ansøgningen beder brugeren om at indtaste et helt tal.
- Ansøgningen slutter. Bemærk, at meddelelsen er den fra den yderste undtagelse. I de prædike trin slutter brugeren programmet ved at trykke på en afbrydelsestast. Programmet anvender dog to forskellige undtagelseshåndterere til at løse problemet.
Video: Python Web Apps with Flask by Ezra Zigmond 2025
Nogle gange skal du placere en undtagelseshåndteringsrutine inden for en anden i en proces kaldet nesting. Når du nester undtagelseshåndteringsrutiner, forsøger Python først at finde en undtagelseshåndterer i det indlejrede niveau og flytter derefter til de ydre lag. Du kan indhente undtagelseshåndteringsrutiner så dybt som nødvendigt for at gøre din kode sikker.
En af de mere almindelige grunde til at bruge et dobbeltlag af undtagelseshåndteringskode er, når du vil hente input fra en bruger og skal placere indtastningskoden i en loop for at sikre, at du rent faktisk får de nødvendige oplysninger. Følgende trin viser, hvordan denne type kode kan virke.
1Open et Python fil vindue.
Du ser en editor, hvor du kan skrive eksempelkoden.
2Type følgende kode i vinduet - tryk Enter efter hver linje:
TryAgain = True mens TryAgain: prøv: Værdi = int (input ("Skriv et helt tal.")) Undtagen ValueError: print skal skrive et helt tal!)) Prøv: DoOver = input ("Prøv igen (y / n)?") undtagen: print ("OK, se dig næste gang!") TryAgain = False else: if (str. DoOver) == "N"): TryAgain = False undtagen KeyboardInterrupt: print ("Du trykkede Ctrl + C!") Print ("Se dig næste gang!") TryAgain = False else: print (Value) TryAgain = False > Koden begynder ved at oprette en input loop. Brug af sløjfer til denne form for formål er faktisk ret almindelig i applikationer, fordi du ikke ønsker at programmet skal afslutte hver gang en inputfejl er lavet. Dette er et forenklet sløjfe, og normalt opretter du en separat funktion for at holde koden.
Der kan opstå en ValueError-undtagelse, når brugeren begår en fejl. Fordi du ikke ved, hvorfor brugeren indtaster den forkerte værdi, skal du spørge, om brugeren vil prøve igen. Selvfølgelig kan man få endnu en undtagelse fra at få mere input fra brugeren. Den indre prøve … undtagen kodeblok håndterer denne sekundære indgang.
3Vælg Kør → Køremodul.
Du ser et Python Shell vindue åbent. Ansøgningen beder brugeren om at indtaste et helt tal.
Programmet viser en fejlmeddelelse og spørger, om du vil prøve igen.
5Type Y og tryk på Enter.
Programmet beder dig indtaste et helt tal igen.
6Type 5. 5 og tryk på Enter.
Programmet viser igen fejlmeddelelsen igen og spørger, om du vil prøve igen.
Ansøgningen slutter. Bemærk, at meddelelsen er den fra den indvendige undtagelse. Ansøgningen kommer aldrig til den ydre undtagelse, fordi den indre undtagelseshåndterer giver generisk undtagelseshåndtering.
8Vælg Kør → Køremodul.
Du ser et Python Shell vindue åbent. Ansøgningen beder brugeren om at indtaste et helt tal.
9Tryk på Ctrl + C, Cmd + C eller en anden tastekombination for at afbryde applikationen.