Python
121 ~25 dk

Hata Yakalama (try-except)

Hata Türleri

HataSebepÖrnek
ValueErrorYanlış değerint("abc")
TypeErrorYanlış tip"2" + 3
ZeroDivisionErrorSıfıra bölme10 / 0
IndexErrorGeçersiz indeksliste[99]
FileNotFoundErrorDosya yokopen("yok.txt")

try-except Yapısı

try:
    sayi = int(input("Sayı girin: "))
    sonuc = 100 / sayi
    print(f"Sonuç: {sonuc}")
except ValueError:
    print("❌ Geçerli bir sayı girin!")
except ZeroDivisionError:
    print("❌ Sıfıra bölme hatası!")
except Exception as e:
    print(f"❌ Hata: {e}")
else:
    print("✅ Başarılı!")
finally:
    print("Program bitti.")
>>> python hata.py Sayı girin: abc ❌ Geçerli bir sayı girin! Program bitti.

Güvenli Input Fonksiyonu

def sayi_al(mesaj):
    while True:
        try:
            return float(input(mesaj))
        except ValueError:
            print("⚠️ Geçerli bir sayı girin!")

not1 = sayi_al("1. notu girin: ")
not2 = sayi_al("2. notu girin: ")
print(f"Ortalama: {(not1 + not2) / 2:.1f}")

raise ile Hata Fırlatma

def yas_kontrol(yas):
    if yas < 0:
        raise ValueError("Yaş negatif olamaz!")
    return f"Yaşınız: {yas}"

try:
    print(yas_kontrol(-5))
except ValueError as e:
    print(f"Hata: {e}")

🎯 Alıştırmalar

  1. Güvenli hesap makinesi (tüm hataları yakalayan)
  2. Dosya okurken hata yakalama
  3. 1-100 arası not alan, geçersiz girişte tekrar soran program
  4. Özel hata sınıfı oluşturup kullanan program

Yorumlar 0

Giriş yapın — Yorumlarınız hemen yayınlansın
Henüz yorum yapılmamış. İlk yorumu siz yapın!