12.07.2015 Views

Python

Python

Python

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!