Innehållsförteckning:
- 1 Öppna ett Python-filfönster.
- 2Typ följande kod i fönstret - tryck på Enter efter varje rad:
- Du ser ett Python Shell-fönster öppet. Applikationen ber dig skriva ett tal mellan 1 och 10.
- Programmet visar ett felmeddelande.
- Programmet genererar samma felmeddelande.
- Programmet matar ut felmeddelandet för det förväntade intervallet. Undantagshantering utesluter inte intervallfel.Du måste fortfarande kontrollera dem separat.
- Den här gången rapporterar programmet slutligen att du har angivit ett korrekt värde på 7. Även om det verkar som mycket arbete för att utföra denna kontrollnivå, kan du inte riktigt vara säker på att din ansökan fungerar korrekt utan det.
- Programmet genererar ett KeyboardInterrupt-undantag. Eftersom detta undantag inte hanteras är det fortfarande ett problem för användaren.
Video: From C to Python by Ross Rheingans-Yoo 2024
Några saker du utvecklar i Python har en hemsk vana att spotta ut undantag när användaren matar in oväntade värden. En del av lösningen är att tillhandahålla intervallkontroll. Omvandlingskontrollen överbryggar emellertid inte problemet med en användartyp som t.ex. Hej i stället för ett förväntat numeriskt värde. Undantagshantering ger en mer komplex lösning på problemet, som beskrivs i följande steg.
1 Öppna ett Python-filfönster.
Du ser en redigerare där du kan skriva exempelkoden.
2Typ följande kod i fönstret - tryck på Enter efter varje rad:
försök: Value = int (input ("Skriv ett tal mellan 1 och 10:")) utom ValueError: print ("Du måste skriva en numret mellan 1 och 10! ") annars: om (Värde> 0) och (Värde <= 10): Skriv ut (" Du skrev: ", Värde) Annat: Skriv ut (" Värdet du skrev in är felaktigt! ") > Koden i försöksblocket har sina undantag hanteras. I detta fall betyder hantering av undantaget att man får inmatning från användaren med hjälp av int (input ()) samtal. Om ett undantag uppstår utanför det här blocket, hanterar koden inte den.
Undantaget block söker ett visst undantag i detta fall: ValueError. När användaren skapar ett ValueError-undantag genom att skriva Hello istället för ett numeriskt värde exekveras det här undantagsblocket. Om användaren skulle generera något annat undantag skulle detta inte vara ett block.
3Välj kör → Körmodul.
Du ser ett Python Shell-fönster öppet. Applikationen ber dig skriva ett tal mellan 1 och 10.
4Type Hej och tryck på Enter.
Programmet visar ett felmeddelande.
5Perform Steg 3 och 4 igen, men skriv 5. 5 istället för Hello.
Programmet genererar samma felmeddelande.
6Perform Steg 3 och 4 igen, men skriv 22 istället för Hello.
Programmet matar ut felmeddelandet för det förväntade intervallet. Undantagshantering utesluter inte intervallfel.Du måste fortfarande kontrollera dem separat.
7Preform Steg 3 och 4 igen, men skriv 7 istället för Hello.
Den här gången rapporterar programmet slutligen att du har angivit ett korrekt värde på 7. Även om det verkar som mycket arbete för att utföra denna kontrollnivå, kan du inte riktigt vara säker på att din ansökan fungerar korrekt utan det.
8Preform Steg 3 och 4 igen, men tryck Ctrl + C, Cmd + C eller alternativet för din plattform istället för att skriva någonting.