Ota kiinni poikkeus "IOError" ao. koodista (nostetaan koska avattavaa tiedostoa ei ole olemassa). Tulosta poikkeuskäsittelijässä teksti:
"Tiedostoa <nimi> ei voitu avata"
fp = open("File-that-does-not-exits.txt")
Täydennä ao. koodi suorittamalla ensin python-käsky: iRes = 5/0
Rajoite: päättele tarvittava poikkeusnimi syntyvästä python-tulosteesta.
try:
iRes = 5/0
except <koodi>:
print "Error: division by zero!"
Toteuta funktio fnRaiseTest(), jolle annetaan ainoana argumenttina värin nimi.
Jos annettu väri on punainen, nosta määrittämäsi poikkeus nimeltä "RedException". Jos väri on keltainen, nosta määrittämäsi poikkeus "YellowException". Muussa tapauksessa funktio ei nosta hallitusti poikkeusta.
Testaa funktiosi koodilla, jossa otetaan kiinni omissa käsittelijöissään molemmat ed. poikkeuksista, sekä kolmannessa käsittelijässä kaikki loput ennalta arvaamattomat, hallitsemattomasti nousevat poikkeukset (joita tosin ei nouse, jos funktiosi toimii oikein. Toki voit tämänkin käsittelijän testata, esim. tekemällä funktiossa nollalla jaon kun syöte on jotain muuta kuin punainen tai keltainen).
Kerro mikä merkitys on "finally" haaralla poikkeuskäsittelijässä?
Copyright © 2011-2017 ELOSOL