You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
POGLAVLJE 5IznimkePi²u¢i program, korisnik (programer) moºe na£initi tri vrste pogre²aka: logi£ke pogre²ke, sintakti£kepogre²ke, te pogre²ke u radu (eng. run-time errors)nkoje se pojavljuju tijekom izvoženja programa.Logi£ka pogre²ka poput neispravnog algoritma, uzrokuje neto£ne rezultate, ali ne sprije£ava izvoženjeprograma. Ovakve se pogre²ke te²ko mogu uo£iti.Sintakti£ka pogre²ka kr²i jedno od <strong>Python</strong>ovih gramati£kih pravila i sprije£ava izvoženje programa.Ove je pogre²ke lako popraviti.Pogre²ka u radu je pogre²ka kod izvr²enja programa koja se dogaža dok je program u nekoj operaciji.Neki £esti uzroci takvih pogre²aka u radu su neprimjereni ulazni podaci, arithmeti£ke pogre²ke,neispravne vrste objekata, nizovi indeksa izvan dometa, nepostoje¢i klju£evi rje£nika, nepravilnoispisana imena atributa, neinicijalizirane varijable, te problemi vezani uz operacijski sustav.Iako to ne pomaºe u slu£aju logi£kih pogre²aka, <strong>Python</strong> podiºe iznimku (engl. exception) pri otkrivanjusintakti£kih pogre²aka ili pogre²aka tijekom izvoženja programa. Interpreter zaustavlja programte ispisuje dijagnosti£ku poruku o pogre²ci, zvanu "traceback", koja ukazuje na vrstu iznimke te pokazujepribliºno mjesto pogre²ke. Sintaksne pogre²ke su naj£e²¢e pogre²ke u pisanju programa, a nanjih upozorava <strong>Python</strong> prilikom izvoženja programa oznakom strijelice na mjestu na kojem se pogre²kajavlja. To mjesto ne mora doista biti ono na kojem se pogre²ka nalazi, nego je obi£no ono na kojem seprvi put pogre²ka manifestira. To£no lociranje pogre²aka nije jednostavno.>>> while True print Pozdrav svima'File "", line 1, in ?while True print 'Pozdrav svima'^SyntaxError: invalid syntaxKada je program sintaksno dobro napisan, postoji mogu¢nost da se pogre²ke jave prilikom izvoženjaprograma. Iznimka je na£in na koji <strong>Python</strong> dohva¢a i pogre²ke tog tipa.5.1 Vrste iznimki<strong>Python</strong> organizira iznimke po hijerarhijskom stablu. Tablica 5.1 ispisuje i opisuje sve ugražene iznimke.Sve vrste iznimki su <strong>Python</strong> klase, objekti. Na vrhu stabla iznimki je Exception, iz kojega su izvedenesve druge ugražene iznimke. Exception je roditelj ili temelj dvaju nasljednika: SystemExit i41