Herneem de oefening Vervoer: Informatie uit csv-bestand verwerken.

Nu kan het bestand niet bestaan, of het kan lijnen bevatten met foute informatie. Volgende fout-afhandeling is gewenst voor de functie aantal_overladen(bestandsnaam):

Opdracht

Opmerking: Voeg zelf lijnen toe in het bestand om te controleren of de foute lijnen herkend worden, en de functie niet stopt.

Voorbeelden van is_truck_overladen

>>> is_truck_overladen("MT;2696;1145;4504;577")
False
>>> is_truck_overladen("MT;578;57gf;587")
False
>>> is_truck_overladen("TR;1000;300")
False
>>> is_truck_overladen("MT;1000;5000;5500")
True

Tips

Ik vind het juiste type niet voor de parameters en de return-waarde van de functie is_truck_overladen. def is_truck_overladen(lijn: str) -> bool:
Wat moet er gebeuren in de functie is_truck_overladen als de lijn geen informatie bevat van een MT? Dan geef je direct False terug
Kan ik alle fouten in de functie is_truck_overladen opvangen met één try - except - statement? Ja! van zodra er iets fout gaat zal je onmiddellijk naar het except-blok gaan, waar je False teruggeeft.
Hoe kan ik de naam van de fout kennen als de lijn fouten bevat? Lok de fout uit door de functie aan te roepen met een lijn die fouten bevat. De naam van de fout wordt getoond.
Op de API vind je ook de foutnamen.
Waar zet ik return True in de functie is_truck_overladen? Dit kan als laatste statement in het try-blok.
Welke foutafhandeling moet dan nog worden uitgewerkt in de functie aantal_overladen? Hier controleer je of het bestand bestaat en correct geopend wordt. Indien niet, dan geeft de functie 0 terug.
Hoe bepaal ik dan het aantal overladen trucks in de functie aantal_overladen? Overloop elke lijn van het bestand, en gebruik de functie is_truck_overladen om te controleren of de lijn informatie bevat van een overladen truck.