Koşullu İfadelere Geçmeden Önce: Debugger

Bu derste program çalışmadığında ne yapacağımızı öğreneceğiz. Çünkü programlama sadece kod yazmak değil, hatayı anlamaktır.

1. Bilgisayar Neden Hata Verir?

Bilgisayar yazılan kodları birebir uygular. Ancak en küçük yazım hatasını bile tolere etmez. İnsanlar anlam çıkarabilir ama bilgisayar çıkaramaz.

Aşağıdaki iki kodu karşılaştıralım:


print("Merhaba Dünya")

print("Merhaba Dünya)

İkinci kodda tırnak kapanmadığı için Python hata verir.

2. Hata Mesajlarını Okumak

Python hata verdiğinde aslında bize yardım eder. Hata mesajı 3 önemli bilgi içerir:

  • Hatanın türü
  • Hatanın olduğu satır
  • Hatanın açıklaması

print("Merhaba Dünya)

Örnek hata mesajı:

SyntaxError: Yazım hatası

line 1: Hata 1. satırda

unterminated string literal: Tırnak kapatılmamış

Python sana hatanın yerini söyler, çözümünü sen bulursun.

3. Debugger Nedir?

Debugger, programı adım adım çalıştıran bir araçtır. Bir nevi büyüteç gibi çalışır.

Kod satır satır ilerler ve hata olan yerde durur. Bu sayede hatayı daha kolay buluruz.

  • F5 ile çalıştırılır
  • Run & Debug menüsünde bulunur
  • Breakpoint (kırmızı nokta) ile durdurma yapılır

4. En Yaygın Hatalar

Hata Türü Örnek Kod Açıklama
Tırnak hatası print("Merhaba) Tırnak kapanmamış
Parantez hatası print("Ali" Parantez eksik
Eşittir hatası x == 5 = atama, == karşılaştırma
Virgül hatası print("Ali" "Veli") Virgül eksik
Yanlış tırnak print(“Merhaba”) Türkçe tırnak kullanımı hatalı

5. Hataları Bulalım

Aşağıdaki kodlarda hata var. Bulmaya çalış.

Örnek 1


print("Ali" "Veli")

İki metin arasında virgül eksik.

Örnek 2


yas = input("Yaşın: ")
print(yas + 1)

input metin döndürür, sayı ile toplanamaz.

Örnek 3


if 10 > 5:
print("Doğru")

Girinti (indentation) hatası var.

6. Hata Mesajını Parçalama

Hata mesajı genelde üç bölümden oluşur:

  • Satır numarası
  • Hatalı kod
  • Hata türü

Satır numarası hatayı bulmanın en hızlı yoludur.

🎮 Hata Bulma Oyunu

Aşağıdaki kodları incele ve hatayı bul.

Soru 1


sayi = input("Sayı: ")
print(sayi + 5)
Cevabı Gör

sayi = int(input("Sayı: "))
print(sayi + 5)

Soru 2


if 10 > 5:
print("Büyük")
Cevabı Gör

if 10 > 5:
    print("Büyük")

Soru 3


yas = int(input("Yaş: "))

if yas = 18:
    print("Tam 18")
Cevabı Gör

if yas == 18:
    print("Tam 18")

Mini Görevler

Mini Görev 1 – Kullanıcı Girişi

Kullanıcıdan kullanıcı adı ve şifre al. Eğer kullanıcı adı admin ve şifre 1234 ise giriş başarılı mesajı ver.


kullanici = input("Kullanıcı adı: ")
sifre = input("Şifre: ")

# Buradan sonrasını sen tamamla
✔ Cevabı Gör

if kullanici == "admin" and sifre == "1234":
    print("Giriş yapabilirsiniz")
else:
    print("Hatalı giriş")

Mini Görev 2 – Basit Hesap Makinesi

Kullanıcıdan işlem seçmesini iste. Sonra iki sayı al ve seçilen işleme göre sonucu hesapla.


print("İşlem seçiniz:")
print("Toplama için +")
print("Çıkarma için -")
print("Çarpma için *")
print("Bölme için /")

islem = input("Seçiminiz: ")

sayi1 = int(input("1. sayı: "))
sayi2 = int(input("2. sayı: "))

# Buradan sonrasını sen tamamla
✔ Cevabı Gör

if islem == "+":
    print("Sonuç:", sayi1 + sayi2)
elif islem == "-":
    print("Sonuç:", sayi1 - sayi2)
elif islem == "*":
    print("Sonuç:", sayi1 * sayi2)
elif islem == "/":
    print("Sonuç:", sayi1 / sayi2)
else:
    print("Geçersiz işlem")