Exception Handling#

Eksepsi (pengecualian) memutus aliran eksekusi normal. Ketika terjadi kesalahan, atau pengecualian seperti yang kita sebut, Python akan berhenti dan menghasilkan pesan kesalahan.

Pada dasarnya ada dua tipe errors: • syntax errors • run time errors (Error status program)

#syntax error
excuse = 'I'm sick'
  File "C:\Users\AhmadYazidMunif\AppData\Local\Temp\ipykernel_8492\3952319862.py", line 2
    excuse = 'I'm sick'
                      ^
SyntaxError: unterminated string literal (detected at line 2)

Exceptions#

Exception: kode yang merespons ketika pengecualian dimunculkan dan mencegah program crash. Dalam Python, ditulis sebagai pernyataan try/except

try:
  print(x)
except:
  print("An exception occurred")
An exception occurred

Karena blok try menimbulkan kesalahan, blok exception akan dieksekusi.Tanpa blok percobaan, program akan macet dan menimbulkan kesalahan.

Dapat menentukan blok pengecualian sebanyak yang diinginkan, misal jika ingin mengeksekusi blok kode khusus untuk jenis kesalahan khusus seperti code dibawah ini:

try:
  print(x)
except NameError:
  print("Variable x is not defined")
except:
  print("Something else went wrong")
Variable x is not defined

Else#

Dapat menggunakan kata kunci lain untuk menentukan blok kode yang akan dieksekusi jika tidak ada kesalahan yang muncul.

try:
  print("Hello")
except:
  print("Something went wrong")
else:
  print("Nothing went wrong")
Hello
Nothing went wrong

Finally#

Blok terakhir, jika ditentukan, akan dieksekusi terlepas dari apakah blok percobaan menimbulkan kesalahan atau tidak.

try:
  print(x)
except:
  print("Something went wrong")
finally:
  print("The 'try except' is finished")
Something went wrong
The 'try except' is finished