Belajar Eksepsi Python: Membuat Eksepsi Kustom
KakaKiky - Selama perjalanan mempelajari Python, kamu pasti telah menemui berbagai jenis eksepsi seperti ValueError, TypeError, dan lain sebagainya. Namun, terkadang, eksepsi bawaan ini mungkin tidak cukup untuk menangkap kesalahan khusus yang terkait dengan aplikasi yang kamu bangun.
Dalam kasus seperti itu, kamu mungkin
ingin membuat eksepsi kustom yang lebih sesuai dengan kebutuhan. Pada materi Python pemula kali ini, kita akan membahas tentang bagaimana cara membuat dan
menggunakan eksepsi kustom di Python.
Mengapa Perlu Menggunakan Eksepsi Kustom?
Pembuatan eksepsi kustom dapat sangat
berguna dalam beberapa skenario:
- Spesifikitas: Dengan eksepsi kustom, kamu dapat mendefinisikan kesalahan dengan lebih spesifik sesuai dengan konteks aplikasi kamu.
- Dokumentasi: Kesalahan kustom memberikan dokumentasi tambahan untuk orang lain yang membaca kode kamu, menjelaskan potensi kesalahan yang mungkin muncul.
- Kontrol: Memberi kamu kontrol lebih atas kesalahan dan bagaimana mereka harus ditangani.
Cara Membuat Eksepsi Kustom di Python
Eksepsi di Python, seperti segala
sesuatu yang lain, adalah objek. Eksepsi kustom dibuat dengan mendefinisikan
kelas baru yang mewarisi dari kelas dasar Exception.
Contoh:
class NilaiNegatifError(Exception):
"""Dilempar ketika nilai yang diberikan adalah negatif."""
pass
angka = -10
if angka < 0:
raise NilaiNegatifError("Nilai tidak boleh negatif!")
Cara Menambahkan Detail Lebih pada Eksepsi Kustom
Kamu dapat menambahkan lebih banyak
informasi ke eksepsi kustom dengan mendefinisikan konstruktor __init__ pada
kelas eksepsi.
Contoh:
class BukanHurufError(Exception):
"""Dilempar ketika input bukan huruf alfabet."""
def __init__(self, input_value, pesan="Input harus berupa huruf alfabet"):
self.input_value = input_value
self.pesan = pesan + f": {input_value}"
super().__init__(self.pesan)
input_teks = "123"
if not input_teks.isalpha():
raise BukanHurufError(input_teks)
Dalam contoh di atas, BukanHurufError
memiliki informasi tambahan mengenai nilai input yang menyebabkan kesalahan.
Cara Menangani Eksepsi Kustom
Menangani eksepsi kustom tidak berbeda
dengan menangani eksepsi bawaan. kamu dapat menggunakan pernyataan try dan
except seperti biasa.
Contoh:
try:
angka = -10
if angka < 0:
raise NilaiNegatifError("Nilai tidak boleh negatif!")
except NilaiNegatifError as e:
print(f"Kesalahan: {e}")
Kesimpulan
Eksepsi kustom memberikan fleksibilitas
tambahan dalam menangani kesalahan di aplikasi kamu. Mereka memungkinkan kamu
untuk mendefinisikan dengan jelas jenis kesalahan yang mungkin muncul dan
memberikan informasi lebih lanjut tentang penyebab kesalahan tersebut. Dengan
memahami bagaimana cara membuat dan menggunakan eksepsi kustom di Python, kamu
dapat meningkatkan kualitas dan keandalan kode kamu. Memastikan bahwa aplikasi kamu
dapat menangani kesalahan dengan cara yang tepat adalah langkah penting untuk
membangun software yang robust dan user-friendly.