Halo teman-teman semuanya, pada artikel kali ini kita akan membahas tentang Exception Handling di Python. Exception adalah error yang terjadi saat program dijalankan (runtime error). Jika tidak ditangani, exception bisa membuat program kita berhenti secara tiba-tiba.
Dengan exception handling, kita bisa mengantisipasi error, memberikan pesan yang lebih ramah, dan tetap menjaga program berjalan.
Apa itu Exception?
Contoh error tanpa exception handling:
# Membagi angka dengan nol
angka = 10
hasil = angka / 0
print("Hasil:", hasil)
Output:
ZeroDivisionError: division by zero
Program langsung berhenti karena ada error.
Menangani Exception dengan try-except
Kita bisa menggunakan blok try-except
untuk menangani error.
try:
angka = 10
hasil = angka / 0
print("Hasil:", hasil)
except ZeroDivisionError:
print("Error: Tidak bisa membagi dengan nol!")
Output:
Error: Tidak bisa membagi dengan nol!
Menangani Banyak Jenis Error
try:
data = int("abc") # error konversi string ke int
except ValueError:
print("Error: Data tidak valid!")
except ZeroDivisionError:
print("Error: Tidak boleh membagi dengan nol!")
Output:
Error: Data tidak valid!
Menggunakan else
dan finally
else
→ dijalankan jika tidak ada error.
finally
→ selalu dijalankan, baik ada error atau tidak.
try:
angka = 10 / 2
except ZeroDivisionError:
print("Error: Tidak bisa bagi nol!")
else:
print("Perhitungan berhasil, hasil:", angka)
finally:
print("Selesai memproses.")
Output:
Perhitungan berhasil, hasil: 5.0
Selesai memproses.
Membuat Exception Sendiri
Kita bisa membuat custom exception dengan raise
.
def cek_umur(umur):
if umur < 0:
raise ValueError("Umur tidak boleh negatif!")
else:
print("Umur valid:", umur)
try:
cek_umur(-5)
except ValueError as e:
print("Error:", e)
Output:
Error: Umur tidak boleh negatif!
Kesimpulan
Pada artikel ini kita sudah belajar tentang Exception Handling di Python. Kita melihat bagaimana error bisa menghentikan program, lalu belajar menangani error menggunakan try-except
.
Kita juga mempelajari penggunaan else
, finally
, dan bahkan membuat exception custom sendiri. Dengan exception handling, program kita menjadi lebih aman, fleksibel, dan ramah terhadap pengguna.
Terima Kasih