Herneem oefening
schoonspringen.
Bij het inlezen van de scores werd verondersteld dat er geen foute invoer gegeven werd. In deze oefening gaan we hierop
verder.
Opgave
- Pas de functie
lees_scores()
aan. De functie leest nog steeds scores en stopt het inlezen als je
"stop" ingeeft.
Indien de invoer geen geheel getal voorstelt, dan negeer je die invoer, en lees je dus de volgende score.
Elke invoer die een geheel getal voorstelt wordt in een lijst toegevoegd.
De functie geeft de lijst met gehele getallen terug.
Gebruik fout-afhandeling!
Voorbeeld van inlezen
Geef de volgende waarden: 40 40.5 -40 5 iets tien 20 post stop
>>> lees_scores()
[40, -40, 5, 20]
Tips
Hoe kan ik bij inlezen de verkeerde invoer negeren?
Voeg een try-except
-blok toe die de fout opvangt.
Hoe kan ik de naam van de fout kennen?
- Lok in VSCode de fout uit door de functie aan te roepen met een foute waarde
- Bij de uitvoering wordt de naam van de fout getoond.
Op de API vind je ook de foutnamen.
Waar voeg ik foutafhandeling toe?
Dit hangt af van de opgave.
In deze opgave moet de fout volledig afgehandeld worden in de lus.
Wat moet ik doen in het try
-blok?
- zet de ingegeven string om naar geheel getal
- voeg dit getal toe aan de lijst met scores.
Wat moet ik doen in het except
-blok?
niets - gebruik pass