„Python“ - išimtys

Turinys
Kai mes kuriame programą, daug kartų pasitaiko situacijų, kai vartotojas gali sukelti neįprastą mūsų algoritmo elgesį, ypač kai esame priklausomi nuo to, kaip minėtas vartotojas įveda duomenis, nes daugelis programavimo kalbų įgyvendina išimtis mechanizmas, neleidžiantis mūsų programai sprogti ir nepavykti sukurti blogesnės padėties, atskleisti visuomenei neskelbtinus duomenis.
Kas yra išimtis?
In Python išimtis yra objektas, kuris, jei tam tikru būdu nėra tvarkomas, baigiasi programa ir rodo a atsekti klaidos, sukėlusios tą išimtį, pavyzdys, kaip išimtis atrodo a Python Mes galime tai pamatyti šioje ekrano kopijoje:

Nors ši išimtis yra labai paprastas pavyzdys, ji suteikia mums gana svarbų teorinį pagrindą, tačiau rodo, kad tai yra tam tikros klasės egzempliorius ir kad šie atvejai gali būti generuojami ir fiksuojami įvairiais būdais, leidžiantys užfiksuoti klaidą ir ką nors padaryti programos srautą, taip išvengiant staigaus jos nutraukimo, su kuriuo mūsų programa būtų daug stabilesnė.
Iškėlus išimtį
Kaip matėme ankstesnėse pastraipose, daugeliu atvejų išimtys pateikiamos automatiškai, tačiau mes taip pat galime jas kelti patys, kad galėtume geriau kontroliuoti programą.
Norėdami padaryti išimtį, naudojame komandą pakelti kuris kaip argumentą laiko klasę arba objektą, kai mes naudojame klasę, jos egzempliorius automatiškai sugeneruojamas, mes netgi galime naudoti eilutės tipo argumentą po klasės, atskirtos kableliu.
Pažiūrėkime keletą pavyzdžių, kaip naudoti klasę Python pavadintas Išimtis :
Naudodami šį kodą galime padaryti išimtį:
>>> pakelti išimties atsekamumą (paskutinis paskutinis skambutis): failas "", 1 eilutė, in? Išimtis 

Mes tiesiog skambiname pakelti ir praėjome klasę IšimtisKaip matome, tai visai nesudėtinga, pažiūrėkime dar kelis kodus.
 >>> pakelti išimtį, 'hipervairo perkrova' Traceback (paskutinis paskutinis skambutis): failas "", 1 eilutė, in? Išimtis: „HyperDrive“ perkrova 

Šiais dviem papildomais atvejais perduodame papildomą tipo eilutės parametrą, kaip matome, galime tai padaryti arba atskiriant kableliu, arba kaip klasės argumentą.
Pažvelkime į kai kurių išimčių, numatytų pagal numatytuosius nustatymus, sąrašą Python:
  • Išimtis: Šakninė klasė visoms išimtims.
  • Atributo klaida: Padidinama, kai nepavyksta priskirti nuorodos ar atributo.
  • IOError: Iškilo bandant atidaryti failą, kurio nėra.
  • Indekso klaida: Padidinama, kai naudojamas neegzistuojantis indeksas ar seka.
  • „KeyError“: Iškeltas, kai susiejamas neegzistuojantis raktas.
  • Vardas Klaida: Padidinama, kai nerandamas kintamojo pavadinimas.
  • Sintaksės klaida: Padidinama, kai kodas blogai suformuotas.
  • Tipas Klaida: Iškyla, kai operacija ar funkcija pritaikoma netinkamo tipo objektui.
  • Vertės klaida: Kaip ir ankstesniu atveju, bet vietoj to, kad būtų taikomas tipui, jis taikomas objekto vertei.
  • „ZeroDivisionerror“: Keltas, kai antrasis padalijimo argumentas yra lygus nuliui.
Sukurkite mūsų išimtis
Nors išimtys įeina į vidų Python Jie jau apima didelę funkcijų sritį, kurios mums gali prireikti, kartais turime tiesiog sukurti savo išimtis, kad atitiktų mūsų programas, pažiūrėkime pavyzdį:
klasė SomeCustomException (Išimtis): išlaikyti

Mes tiesiog sukuriame klasę, kaip ir bet kuri kita, ir tada paveldime iš klasės Išimtis kad sukurtume pasirinktinę išimtį.Ar jums patiko ir padėjo ši pamoka?Galite apdovanoti autorių paspausdami šį mygtuką, kad suteiktumėte jam teigiamą tašką
wave wave wave wave wave