python try except error | java php laravel linux mysql sql bootstrap html css query java php laravel linux mysql sql bootstrap html css query: python try except error

Sunday, April 26, 2026

python try except error

🐍 Python ⚡ Error Handling 📘 Artikel 10 dari 16

Penanganan Error (Try & Except):
Biar Program Nggak Langsung Crash

Pelajari cara menggunakan try except Python error handling supaya programmu lebih tangguh, profesional, dan nggak bikin pengguna panik.

8 menit
Estimasi Baca
Pemula
Level
2026
Tahun

Pernah nggak sih kamu lagi pakai aplikasi, tiba-tiba muncul layar merah atau pesan aneh yang bikin kamu langsung nutup programnya? Nah, itu tandanya sang developer lupa — atau belum tahu — cara bikin try except Python error handling yang bener. Di artikel ini, kamu bakal belajar teknik yang bikin programmu "dewasa": bukan berhenti total saat ada masalah, tapi justru menanganinya dengan elegan. Ini bukan cuma soal teknis — ini soal menghormati penggunamu. Yuk mulai!

⚙️ Konsep Utama
Apa Itu Error Handling?

Error Handling adalah mekanisme dalam Python untuk "menangkap" kesalahan yang terjadi saat program berjalan — disebut runtime error atau exception — supaya program tidak langsung berhenti (crash). Dengan blok try...except, kamu bisa menentukan apa yang harus dilakukan program ketika sesuatu berjalan tidak sesuai rencana.

🏥 Try Except Python: Seperti Dokter Jaga di UGD

Bayangkan sebuah rumah sakit. Ada dokter jaga di UGD yang siap 24 jam. Tugasnya bukan mencegah semua orang sakit — itu mustahil. Tugasnya adalah menangani pasien yang datang dengan kondisi darurat, lalu memastikan mereka ditangani dengan tepat.

Nah, blok try...except di Python bekerja persis seperti itu. Blok try adalah "ruang normal" tempat program berjalan. Kalau ada "pasien darurat" alias error yang masuk, blok except yang langsung turun tangan — bukan membiarkan seluruh sistem kolaps.

🔥 Fakta Menarik

Menurut survei Stack Overflow, lebih dari 60% bug di aplikasi produksi disebabkan oleh unhandled exceptions — error yang nggak ditangkap. Artinya, belajar try except Python error handling bukan cuma "nilai plus", tapi sudah jadi kebutuhan dasar seorang developer.

📐 Struktur Dasar Try Except Python Error Handling

Sebelum meloncat ke contoh yang kompleks, mari pahami dulu struktur dasarnya. Python menyediakan beberapa kata kunci yang bekerja bersama dalam sistem penanganan error:

Kata Kunci Fungsi Wajib?
try Blok kode yang mungkin menimbulkan error ✅ Ya
except Blok yang dijalankan jika error terjadi ✅ Ya
else Dijalankan jika TIDAK ada error ⭕ Opsional
finally Selalu dijalankan, ada error atau tidak ⭕ Opsional

🛠️ Cara Menulis Try Except Langkah demi Langkah

1
Tulis kode yang berpotensi error di dalam blok try

Identifikasi dulu bagian mana dari kode yang bisa "meledak" — misalnya membagi angka, membaca file, atau menerima input dari pengguna.

2
Tangkap errornya di blok except

Sebisa mungkin sebutkan jenis error yang spesifik, misalnya ValueError, ZeroDivisionError, bukan langsung pakai Exception saja.

3
Tambahkan else untuk kode yang berjalan normal

Pisahkan logika "sukses" di blok else agar kode lebih rapi dan mudah dibaca.

4
Gunakan finally untuk "cleanup" wajib

Kalau ada sesuatu yang harus selalu dijalankan (seperti menutup file atau koneksi database), letakkan di blok finally.

🐍 python — contoh_dasar.py
try:
    angka = int(input("Masukkan angka: "))
    hasil = 100 / angka

except ValueError:
    print("Eh, itu bukan angka! Masukkan angka ya.")

except ZeroDivisionError:
    print("Nggak bisa dibagi nol, ya!")

else:
    print(f"Hasilnya: {hasil}")

finally:
    print("Program selesai dijalankan.")
  
💡 Tips

Selalu tangkap jenis error yang spesifik di blok except. Menulis except Exception saja itu seperti "tangkap semua ikan" tanpa tahu mana yang kamu mau. Kode jadi susah di-debug!

⚠️ Jenis-Jenis Error yang Sering Kamu Temui saat Belajar Python

Python punya banyak jenis exception bawaan. Kenali yang paling sering muncul supaya kamu bisa menanganinya dengan tepat. Jangan sampai salah "diagnosa" errornya!

🔢
ValueError

Muncul ketika kamu memasukkan nilai yang salah tipe, misalnya int("halo").

ZeroDivisionError

Terjadi saat kamu membagi bilangan dengan nol. Matematika dunia nyata berlaku!

📂
FileNotFoundError

Muncul saat program mencoba membuka file yang tidak ada di lokasi tersebut.

🔑
KeyError

Terjadi saat kamu mengakses key di dictionary yang tidak ada.

📋
IndexError

Muncul saat kamu mengakses index list yang melebihi panjang listnya.

🏷️
TypeError

Muncul saat operasi dilakukan pada tipe data yang tidak sesuai, misal "5" + 5.

🐍 python — multiple_except.py
# Menangani banyak jenis error sekaligus
def baca_data(nama_file):
    try:
        with open(nama_file, 'r') as f:
            data = f.read()
            angka = int(data)
            return angka

    except FileNotFoundError:
        print(f"File '{nama_file}' tidak ditemukan!")
        return None

    except ValueError:
        print("Isi file bukan angka yang valid!")
        return None

    finally:
        print("Proses membaca file selesai.")


# Uji coba
hasil = baca_data("nilai.txt")
print(f"Hasil: {hasil}")
  
⚠️ Perhatian

Jangan pernah membiarkan blok except kosong tanpa kode apapun! Ini disebut "silent failure" — error ada tapi kamu tidak tahu. Minimal print pesan error-nya, atau lebih baik lagi, gunakan logging.

🚀 Tingkat Lanjut: Raise Error & Custom Exception

Selain menangkap error, Python juga memungkinkan kamu untuk sengaja melempar error menggunakan raise. Ini berguna saat kamu ingin memvalidasi data dan "memberitahu" bagian lain dari program bahwa ada sesuatu yang salah.

Bahkan kamu bisa bikin exception buatanmu sendiri (custom exception) dengan cara mewarisi class Exception. Ini teknik yang dipakai di proyek-proyek Python skala besar!

🐍 python — custom_exception.py
# Membuat Custom Exception
class UmurTidakValidError(Exception):
    pass

def daftar_akun(nama, umur):
    if umur < 17:
        raise UmurTidakValidError(
            f"Umur {umur} tahun belum cukup untuk mendaftar!"
        )
    return f"Selamat datang, {nama}!"

try:
    pesan = daftar_akun("Budi", 14)
    print(pesan)
except UmurTidakValidError as e:
    print(f"Pendaftaran gagal: {e}")

# Output: Pendaftaran gagal: Umur 14 tahun belum cukup untuk mendaftar!
  
⚡ Insight Penting

Custom exception adalah tanda bahwa kamu sudah berpikir seperti developer sungguhan. Dengan membuat exception yang spesifik, kamu memudahkan siapapun yang membaca kode untuk langsung tahu apa yang salah, tanpa harus mengulik lebih jauh.

💡 Tips Pro

Gunakan except ErrorType as e untuk mendapatkan detail pesan errornya. Variabel e menyimpan objek error yang bisa kamu print atau log untuk keperluan debugging. Ini sangat berguna saat kamu bekerja di tim atau membuat aplikasi yang sudah production!

📚 Bagian dari Seri
Seri Belajar Python: Python from Zero to Zorro

Artikel ini adalah bagian ke-10 dari 16 artikel dalam seri lengkap belajar Python untuk pemula. Kunjungi halaman utama untuk melihat semua artikel!

🗂️ Lihat Daftar Isi Lengkap →
✅ Kesimpulan

Kamu Sekarang Sudah Punya Jaring Pengaman! 🎉

Selamat! Kamu sudah melewati salah satu skill paling penting dalam dunia pemrograman. Dengan memahami try except Python error handling, kamu sudah satu langkah lebih dekat menjadi developer yang tangguh.

Berikut rangkuman yang bisa kamu simpan:

  • Blok try berisi kode yang mungkin error, except menangkapnya dengan elegan.
  • Selalu tangkap error yang spesifik — jangan pakai except Exception mentah-mentah.
  • Blok else untuk kode sukses, finally untuk cleanup yang selalu berjalan.
  • Custom exception bikin kode lebih profesional dan mudah di-maintain oleh tim.

💬 Punya pertanyaan atau mau berbagi pengalaman pertama kamu ketemu error di Python? Yuk tinggalkan komentar di bawah — siapa tahu pengalamanmu bisa bantu teman-teman lain yang lagi berjuang dengan hal yang sama! Dan jangan lupa share artikel ini ke teman yang lagi belajar Python. 🚀

🏷️ Tags
#BelajarPython #Python #TryExcept #ErrorHandling #PythonPemula #PythonException #PythonFromZeroToZorro

No comments:

Post a Comment

saifiahmada.com adalah blog belajar programming Indonesia, membahas lengkap materi bahasa pemrograman: code HTML, CSS, Bootstrap, Desain, PHP, MySQL, coding Java, Query, SQL, dan dunia linux