logo

Python Try Except

„Python“ klaidos gali būti dviejų tipų, ty sintaksės klaidos ir išimtys. Klaidos yra programos problemos, dėl kurių programa sustabdo vykdymą. Kita vertus, išimtys keliamos, kai įvyksta tam tikri vidiniai įvykiai, kurie keičia įprastą programos eigą.
Pastaba: Norėdami gauti daugiau informacijos, žr. Python klaidos ir išimtys
Kai kurios dažniausiai pasitaikančios išimčių klaidos yra šios:

    IOKlaida: jei failo negalima atidaryti KeyboardInterrupt: kai vartotojas paspaudžia nereikalingą klavišą ValueError: kai įtaisytoji funkcija gauna neteisingą argumentą EOFEror: jei failo pabaiga paspaudžiama nenuskaitant jokių duomenų Importavimo klaida: jei jis negali rasti modulio

Išbandykite Išskyrus Python

Teiginys Try and Except naudojamas šioms mūsų Python kodo klaidoms tvarkyti. „Try“ blokas naudojamas patikrinti tam tikrą kodą, ar nėra klaidų, ty „try“ bloke esantis kodas bus vykdomas, kai programoje nėra klaidos. Tuo tarpu kodas išskyrus bloką bus vykdomas kiekvieną kartą, kai programa susiduria su kokia nors klaida ankstesniame bandymo bloke.



eilutė prieš stulpelį

Sintaksė:

try: # Some Code except: # Executed if error in the # try block>

Kaip veikia try()?

  • Pirma, bandyti įvykdoma sąlyga, ty kodas tarp bandyti.
  • Jei nėra išimtis, tada tik bandyti punktas veiks, išskyrus punktas baigtas.
  • Jei įvyksta kokia nors išimtis, bandyti punktas bus praleistas ir išskyrus punktas veiks.
  • Jei atsiranda kokia nors išimtis, bet išskyrus Kode esanti sąlyga jo netvarko, ji perduodama išoriniam bandyti pareiškimus. Jei išimtis netvarkoma, vykdymas sustabdomas.
  • A bandyti teiginys gali turėti daugiau nei vieną išskyrus sąlyga

1 kodas: Ne išimtis, todėl bandyti punktas veiks.



Python3






# Python code to illustrate> # working of try()> def> divide(x, y):> >try>:> ># Floor Division : Gives only Fractional Part as Answer> >result>=> x>/>/> y> >print>(>'Yeah ! Your answer is :'>, result)> >except> ZeroDivisionError:> >print>(>'Sorry ! You are dividing by zero '>)> # Look at parameters and note the working of Program> divide(>3>,>2>)>

>

>

Pagalbinė erdvė: O(1)

Išvestis:

Yeah ! Your answer is : 1>

1 kodas: Yra tik išimtis išskyrus punktas veiks.

Python3




# Python code to illustrate> # working of try()> def> divide(x, y):> >try>:> ># Floor Division : Gives only Fractional Part as Answer> >result>=> x>/>/> y> >print>(>'Yeah ! Your answer is :'>, result)> >except> ZeroDivisionError:> >print>(>'Sorry ! You are dividing by zero '>)> # Look at parameters and note the working of Program> divide(>3>,>0>)>

>

seleno pamoka java
>

Išvestis:

Sorry ! You are dividing by zero>

2 kodas: Kitas rašymo būdas išskyrus teiginys, rodomas žemiau ir tokiu būdu priimamos tik išimtys, kurias norite užfiksuoti, arba galite patikrinti, kuri klaida įvyko.

Python3




# code> def> divide(x, y):> >try>:> ># Floor Division : Gives only Fractional Part as Answer> >result>=> x>/>/> y> >print>(>'Yeah ! Your answer is :'>, result)> >except> Exception as e:> ># By this way we can know about the type of error occurring> >print>(>'The error is: '>,e)> > divide(>3>,>'GFG'>)> divide(>3>,>0>)>

>

>

Išvestis:

The error is: unsupported operand type(s) for //: 'int' and 'str' The error is: integer division or modulo by zero>

Kita sąlyga

„Python“ bloke try-except taip pat galite naudoti sąlygą else, kuri turi būti po visų išlygų išskyrus. Kodas įvedamas į else bloką tik tuo atveju, jei try sąlyga nekelia išimties.

paslėptų programų šiame įrenginyje

Sintaksė:

try: # Some Code except: # Executed if error in the # try block else: # execute if no exception>

Kodas:

Python3




# Program to depict else clause with try-except> > # Function which returns a/b> def> AbyB(a , b):> >try>:> >c>=> ((a>+>b)>/>/> (a>->b))> >except> ZeroDivisionError:> >print> (>'a/b result in 0'>)> >else>:> >print> (c)> > # Driver program to test above function> AbyB(>2.0>,>3.0>)> AbyB(>3.0>,>3.0>)>

>

>

Išvestis:

-5.0 a/b result in 0>

Galiausiai „Python“ raktinis žodis

„Python“ pagaliau pateikia raktinį žodį, kuris visada vykdomas po bandymo ir išskyrus blokus. Paskutinis blokas visada vykdomas po įprasto trynimo bloko nutraukimo arba kai trynimo blokas baigiasi dėl kai kurių išimčių.

Sintaksė:

try: # Some Code except: # Executed if error in the # try block else: # execute if no exception finally: # Some code .....(always executed)>

Kodas:

Python3


Pete'o Davidsono pilietybė



# Python program to demonstrate finally> > # No exception Exception raised in try block> try>:> >k>=> 5>/>/>0> # raises divide by zero exception.> >print>(k)> > # handles zerodivision exception> except> ZeroDivisionError:> >print>(>'Can't divide by zero'>)> > finally>:> ># this block is always executed> ># regardless of exception generation.> >print>(>'This is always executed'>)>

>

>

Išvestis:

Can't divide by zero This is always executed>

Susiję straipsniai:

  • Išvesties klausimai
  • Išimčių tvarkymas Python
  • Vartotojo nustatytos išimtys