İçeriğe geç
Python İstisnalarıHata
UnboundLocalError

UnboundLocalError

Bir yerel değişkene, kendisine değer atanmadan önce başvuruldu.

python

Bu hatanın nedenleri

Aynı fonksiyon içinde bir değişkene atama yapmadan önce onu okudunuz. Python atamayı görür ve değişkeni fonksiyonun tamamı boyunca yerel olarak kabul eder, bu yüzden atamadan önce okumak başarısız olur. Bu durum genellikle global anahtar sözcüğü olmadan bir global değişkeni değiştirmeye çalışırken oluşur.

Nasıl düzeltilir

Global değişkenlere başvurmak için global anahtar sözcüğünü kullanın: global x. Veya çevreleyen kapsam değişkenleri için nonlocal kullanın. Kodu, değişken okunmadan önce atanacak şekilde yeniden yapılandırın. Değeri bunun yerine fonksiyon parametresi olarak geçirin.

Örnek

x = 10
def f(): print(x); x = 20
f()  # UnboundLocalError
Resmi Belgeler

İlgili Hata Kodları