UnboundLocalErrorUnboundLocalError
Bir yerel değişkene, kendisine değer atanmadan önce başvuruldu.
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İlgili Hata Kodları
PermissionErrorPermissionError
Yetersiz dosya sistemi izinleri nedeniyle işleme izin verilmiyor.
concurrent.futures.TimeoutErrorconcurrent.futures.TimeoutError
Bir Future, belirtilen zaman aşımı süresi içinde tamamlanmadı.
IOErrorIOError
Bir G/Ç işlemi başarısız oldu. IOError, Python 3'te OSError için bir takma addır.
MemoryErrorMemoryError
Python yorumlayıcısının kullanılabilir belleği tükendi.
SyntaxErrorSyntaxError
Python, ayrıştırılamayan geçersiz bir sözdizimiyle karşılaştı.
FutureWarningFutureWarning
Gelecekteki bir sürümde değişecek davranış hakkında uyarı.