Python Try Except

try Ang block ay nagbibigay sa iyo ng pagsubok sa block ng code upang makita ang mga error.

except Ang block ay nagbibigay sa iyo ng paggamit na maiproseso ang mga error.

finally Ang block ay nagbibigay sa iyo ng pagpipilian na gawin ang code, kahit anong resulta ng try at except block.

Pag-iwas sa Exception

Kung tinatawag ang Python at mayroong error o exception, karaniwang itataas ang paghinto at magprint ng mensahe ng error.

Maaari mong gamitin try Ang statement na ito ay nagtatalaga ng pag-iwas sa mga exception na ito:

Halimbawa

Ang try block ay magdulot ng exception, dahil ang x ay hindi tinukoy:

try:
  print(x)
except:
  print("Nangyari ang isang exception")

Run Halimbawa

Dahil ang try block ay nagdulot ng error, kaya ang except block ay lalagay.

Kung walang try block, ang program ay mapapanghinto at magdulot ng error:

Halimbawa

Ang statement na ito ay magdulot ng error, dahil ang x ay hindi tinukoy:

print(x)

Run Halimbawa

Maraming exception

Maaari mong tanggapin anumang bilang ng exception block, halimbawa, kung gusto mong gawin ng isang espesyal na block ng code para sa isang partikular na uri ng error:

Halimbawa

Kung ang try block ay nagdulot ng error NameErrorpagkatapos ay magprint ng isang mensahe, kung ito ay iba pang error ay magprint ng ibang mensahe:

try:
  print(x)
except NameError:
  print("Ang variable x ay hindi tinukoy")
except:
  print("May nangyari ang iba pang pagkakamali")

Run Halimbawa

Else

Kung walang nagdulot ng error, maari mong gamitin else Gamit ang keyword upang tanggapin ang block ng code na gagawin:

Halimbawa

Sa kasong ito,try Ang block ay hindi magbibigay ng anumang error:

try:
  print("Hello")
except:
  print("May nangyari ang isang pagkakamali")
else:
  print("Wala nagkasama")

Run Halimbawa

Finally

Kung tinukoy na finally Ang block, kahit na ang try block ay nagdulot ng error o hindi, ay lalagay ang finally block.

Halimbawa

try:
  print(x)
except:
  print("May nangyari ang isang pagkakamali")
finally:
  print("Ang 'try except' ay natapos na")

Run Halimbawa

Ito ay napaka-kalakip para sa pagsasara ng mga bagay at paglilinis ng mga mapagkukunan:

Halimbawa

Subukang buksan at isulat ang di-maaring ilagay sa file:

try:
  f = open("demofile.txt")
  f.write("Lorum Ipsum")
except:
  print("Something went wrong when writing to the file")
finally:
  f.close()

Run Halimbawa

Ang programa ay magpatuloy at hindi magbukas ng file object.

Pagbigay ng kawalan ng kapanatagan

Bilang tagapagpaunlad ng Python, maaari mong itutungo ng kawalan ng kapanatagan kapag nagaganap ang kondisyon.

Para sa pagtutungo ng kawalan ng kapanatagan, gamitin ang raise Pangkatwa.

Halimbawa

Kung x ay mas mababa sa 0, ay magbigay ng kawalan ng kapanatagan at itigil ang programa:

x = -1
if x < 0:
  raise Exception("Sorry, no numbers below zero")

Run Halimbawa

raise Mga pangkatwa na ginagamit para sa pagbigay ng kawalan ng kapanatagan.

Maaari mong tukuyin ang uri ng kawalan ng kapanatagan na ititatala, at ipakita sa teksto ng gumagamit.

Halimbawa

Kung x ay hindi integer, ay magbigay ng TypeError:

x = "hello"
if not type(x) is int:
  raise TypeError("Only integers are allowed")

Run Halimbawa