⊗pyPmExcInr 74 of 129 menu

Bevezetés a kivételes helyzetekbe Pythonban

Ebben a részben a Python kivételes helyzeteit fogjuk megvizsgálni. Először is meg kell értenünk, hogy mik is ezek pontosan.

Bármilyen program írásakor a fejlesztő hallgatólagosan azzal számol, hogy az összes használt szoftver-technikai mechanizmus megfelelően fog működni.

Ez azonban nem mindig igaz. Adatátvitel során a hálózaton a kapcsolat megszakad, és az adatok hibás formában érkeznek meg hozzánk, vagy egyáltalán nem érkeznek meg. Fájl írásakor kiderül, hogy a merevlemezen kijelölt hely elfogyott, és a fájl nem írható. Fájl olvasásakor kiderül, hogy a fájl nem létezik, és nincs honnan olvasnunk. Adatok nyomtatásakor a nyomtatót és a számítógépet összekötő kábel megszakad.

A leírt helyzeteknek közös a lényege: valamilyen hiba történik, ami a tervezett művelet befejezésének lehetetlenségéhez vagy értelmetlenségéhez vezet.

Vannak olyan helyzetek is, amikor hiba történik, de az nem meghibásodás. Például megkérdezed a felhasználó email címét, és ő érvénytelen formátumban adja meg. Nyilvánvaló, hogy programunk nem folytathatja az email feldolgozását, mivel az helytelen. De ennek ellenére ez nem kivételes helyzet. Programunk maga is javíthatja a helyzetet: kiír egy hibaüzenetet, és a felhasználó megismétli a bevitelet.

Valójában a hiba és a nem hiba közötti különbség meglehetősen elmosódott. Egy eseményt, amelyet egy program kivételes helyzetként értelmez, egy másik program úgy értelmezhet, mint valamilyen hibát, amellyel meg tud birkózni.

A kritérium a következő: ha a probléma fellépésekor a programod képes folytatni azt, amire szánták, akkor az nem kivételes helyzet, ha pedig nem képes, akkor igen, az kivétel.

Például van egy programunk, amely meg kell kérdezze a felhasználó email címét. Ha a felhasználó érvénytelen formátumban adta meg az email címet - az nem hiba. Ez egy várt probléma, és programunk annyiszor fogja megkérdezni a felhasználó email címét, amíg az helyesen meg nem adja.

Tegyük fel, hogy az email címét megkérdező programunknak el is kell küldenie ezt a helyes email címet az interneten keresztül. Ekkor kiderül, hogy az internet nem működik. Ez már probléma: a program semmiképpen sem tudja az interneten keresztül elküldeni az adatokat, ha az internet nem működik. A program ennek ellenére folytathatja a végrehajtást: kiírhatja a probléma információját, megismételheti a küldési kísérletet egy idő után, és így tovább. De ezek a műveletek már nem teljesen azok, amire a programot szánták, mivel az alapvető művelet - az email küldése - a program nem tudja megtenni.

Ebből kifolyólag nagyon gyakran a normális és a kivételes viselkedés értelmezése a programozó előtt álló feladatoktól függ.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás