Belajar Python Dasar

Pelajaran 8 dari 12

8. Penanganan Error dan Exception

Exception adalah cara Python menangani error yang terjadi saat program berjalan.

Try-Except Block

# Contoh penanganan error
try:
    angka = int(input("Masukkan angka: "))
    hasil = 10 / angka
    print(f"Hasil: {hasil}")
except ValueError:
    print("Error: Input harus berupa angka!")
except ZeroDivisionError:
    print("Error: Tidak bisa dibagi dengan nol!")
except Exception as e:
    print(f"Terjadi error: {e}")
else:
    print("Operasi berhasil!")
finally:
    print("Blok ini selalu dijalankan")

Membuat Custom Exception

# Custom exception
class NilaiTerlaluKecilError(Exception):
    """Exception ketika nilai terlalu kecil"""
    pass

def cek_nilai(nilai):
    if nilai < 10:
        raise NilaiTerlaluKecilError("Nilai harus 10 atau lebih besar")
    return nilai

try:
    cek_nilai(5)
except NilaiTerlaluKecilError as e:
    print(f"Error: {e}")

Latihan:

Buat program kalkulator sederhana yang meminta input dua angka dan operasi (+, -, *, /), lalu tampilkan hasilnya dengan penanganan error yang tepat.

# Solusi contoh
try:
    angka1 = float(input("Masukkan angka pertama: "))
    angka2 = float(input("Masukkan angka kedua: "))
    operasi = input("Masukkan operasi (+, -, *, /): ")
    
    if operasi == '+':
        hasil = angka1 + angka2
    elif operasi == '-':
        hasil = angka1 - angka2
    elif operasi == '*':
        hasil = angka1 * angka2
    elif operasi == '/':
        hasil = angka1 / angka2
    else:
        raise ValueError("Operasi tidak valid")
    
    print(f"Hasil: {hasil}")
except ValueError as e:
    print(f"Input tidak valid: {e}")
except ZeroDivisionError:
    print("Error: Pembagian dengan nol!")
except Exception as e:
    print(f"Terjadi error: {e}")
Sebelumnya Selanjutnya