IndentationError, Python'un en sık karşılaşılan hatalarından biridir. Python, kod bloklarını süslü parantez yerine girinti (indentation) ile ayırır. Girinti yanlışsa program çalışmaz.

Neden olur?

def selamla():
print('Merhaba')   # HATA: girinti yok

Buradaki print satırı fonksiyonun içinde olduğu için içeri girintili olmalıdır.

Doğrusu

def selamla():
    print('Merhaba')   # 4 boşluk girinti — doğru

Altın kurallar

  • Tutarlı ol: Ya hep boşluk ya hep tab kullan — ikisini karıştırma. Standart: 4 boşluk.
  • if, for, while, def, class'tan sonraki blok girintili olmalı.
  • Aynı blok içindeki tüm satırlar aynı miktarda girintili olmalı.

Çoğu editör (VS Code gibi) tab tuşunu otomatik 4 boşluğa çevirir; bu ayarı açık tutmak hatayı büyük ölçüde önler.