Exception adalah kesalahan yang terjadi saat program dijalankan. Kesalahan ini dapat terjadi karena berbagai alasan, seperti kesalahan logika, masalah input/output, atau kesalahan pembagian dengan nol. Python menyediakan mekanisme untuk menangani exception menggunakan blok try, except, else, dan finally.
Blok try dan except
Blok try digunakan untuk menulis kode yang mungkin menghasilkan exception, sedangkan blok except menangani exception yang mungkin terjadi.
try:
hasil = 10 / 0
except ZeroDivisionError:
print("Tidak bisa membagi dengan nol.")
Blok else
Blok else dijalankan jika tidak ada exception yang terjadi di dalam blok try.
try:
hasil = 10 / 2
except ZeroDivisionError:
print("Tidak bisa membagi dengan nol.")
else:
print(f"Hasil: {hasil}")
Blok finally
Blok finally dijalankan terlepas dari apakah exception terjadi atau tidak. Ini berguna untuk membersihkan sumber daya seperti file atau koneksi jaringan.
try:
file = open("contoh.txt", "r")
isi = file.read()
except FileNotFoundError:
print("File tidak ditemukan.")
finally:
file.close()
Jenis-Jenis Exception Umum di Python
Berikut adalah beberapa exception umum yang sering terjadi di Python:
ZeroDivisionError: Terjadi ketika pembagian dengan nol.FileNotFoundError: Terjadi ketika file yang diminta tidak ditemukan.TypeError: Terjadi ketika operasi atau fungsi diterapkan pada tipe data yang tidak sesuai.ValueError: Terjadi ketika fungsi menerima argumen dengan tipe data yang benar tetapi nilai yang tidak sesuai.
Tabel Exception Python
| Exception | Deskripsi | Contoh Kode |
|---|---|---|
ZeroDivisionError | Kesalahan karena pembagian dengan nol | python<br>try:<br> hasil = 10 / 0<br>except ZeroDivisionError:<br> print("Tidak bisa membagi dengan nol.") |
FileNotFoundError | Kesalahan karena file yang diminta tidak ditemukan | python<br>try:<br> file = open("tidak_ada.txt", "r")<br>except FileNotFoundError:<br> print("File tidak ditemukan.") |
TypeError | Kesalahan karena operasi atau fungsi diterapkan pada tipe data yang tidak sesuai | python<br>try:<br> hasil = "10" + 10<br>except TypeError:<br> print("Operasi tidak valid.") |
ValueError | Kesalahan karena fungsi menerima argumen dengan nilai yang tidak sesuai | python<br>try:<br> angka = int("sepuluh")<br>except ValueError:<br> print("Nilai tidak bisa diubah menjadi integer.") |
Contoh Program Exception Handling
Berikut adalah contoh program yang menunjukkan penggunaan berbagai blok exception handling di Python.
Contoh 1: Menangani Pembagian dengan Nol
try:
hasil = 10 / 0
except ZeroDivisionError:
print("Tidak bisa membagi dengan nol.")
else:
print(f"Hasil: {hasil}")
finally:
print("Blok finally selalu dijalankan.")
Contoh 2: Menangani File Tidak Ditemukan
try:
file = open("tidak_ada.txt", "r")
isi = file.read()
except FileNotFoundError:
print("File tidak ditemukan.")
else:
print(isi)
finally:
if 'file' in locals():
file.close()
print("Blok finally selalu dijalankan.")
Output Contoh Program
Contoh 1 Output:
Tidak bisa membagi dengan nol.
Blok finally selalu dijalankan.
Contoh 2 Output:
File tidak ditemukan.
Blok finally selalu dijalankan.
![]()

