UnboundLocalError, bir fonksiyon içinde henüz değer atanmamış bir yerel değişkeni kullanmaya çalıştığında oluşur.

Neden olur?

Genelde bir global değişkeni fonksiyon içinde = ile değiştirmeye çalışınca olur; Python onu yerel kabul eder.

Hatalı kod

sayac = 0
def artir():
    sayac = sayac + 1   # UnboundLocalError
artir()

Doğru kod

sayac = 0
def artir():
    global sayac
    sayac = sayac + 1
artir()

Kontrol listesi

  • Global değişkeni değiştireceksen global anahtar kelimesini kullan.
  • Daha iyisi: değeri parametre olarak al ve return ile döndür.
  • Yerel ve global değişkenleri karıştırmamaya dikkat et.

Python derslerimizle adım adım pratik yapabilirsin.