Ana sayfa Genel Python – Exceptions (İstisnalar ve İstisna Yakalama)

Python – Exceptions (İstisnalar ve İstisna Yakalama)

5592
43
PAYLAŞ

Hatalar ve İstisnalar (Exceptions)

Bu yazıyla beraber artık Python programlarında oluşabilecek belli bir hatayı veya istisnayı nasıl çözeceğimizi öğrenmeye çalışacağız.

Hatalar

Python programlarında bazen bir değişkenin tanımlanmadan kullanılmaya çalıştırılması , bazen de yapılamayacak bir aritmetik işlemin yapılması Pythonda hatalara yol açar. Ancak bu istisnai durumlarda, hataların türüne göre programlarımızı daha güvenli bir şekilde yazabiliriz.Yani hata çıkarabilecek kodlarımızı öngörerek bu hataları programlarımızda yakalayabiliriz. Pythondaki bazı hatalara şunlar örnek verilebilir;

Bunun gibi Pythonda yüzlerce hata bulunur. Ancak bunların hiçbirini ezberlememize gerek yok. Kodumuzun durumuna göre zaten biz hataları çıktı olarak görebiliyoruz. Ama , siz yine de bunların neler olduğuna bakmak isterseniz Python’ın resmi sitesine bakabilirsiniz.

https://docs.python.org/3/library/exceptions.html

Hata Yakalama – try,except,finally

Bu konuda programlarımızda hata verebilecek kodları yakalayabildiğimiz try,except,finally bloklarını ve fonksiyonlarda kendi hatalarımızı nasıl fırlatacağımızı öğreneceğiz.

try , except blokları

try ,except bloklarının yapısı şu şekildedir;

Hemen try , except ile ilgili örneklerimize geçelim.

Örnek 1

Burada a = int(“324234sadsad”) kodu sıkıntı verdiği için program bu bloktan çıkarak direk except bloğuna girdi ve “Hata oluştu” yazdı. try ,except bloğu bitince program ekrana “Bloklar sona erdi” yazdırdı.

Örnek 2

Şimdi de 2 adet sıkıntı çıkaran kodumuz bulunsun. Birincisi ZeroDivisionError , diğeri ValueError hatası.

Şimdi de bu hataları yakalamaya çalışalım.

İstersek bu iki hatanın aynı except bloğuna girmesini sağlayabiliriz.

İşte burada gördüğümüz gibi bir kodda herhangi bir hata olduğunda try,except blokları ile hataları yakalayabiliyoruz.

try,except,finally blokları

Bazen programlarımızda her durumda mutlaka çalışmasını istediğimiz kodlar bulunabilir.Bunun için biz kendi try,except bloklarına ek olarak bir tane finally bloğu ekleyebiliriz. finally blokları hata olması veya olmaması durumunda mutlaka çalışacaktır. Yapısı şu şekildedir;

Hemen basit bir örnek yazalım.

Hata fırlatmak

Bazen kendi yazdığımız fonksiyonlar yanlış kullanılırsa kendi hatalarımızı üretip Pythonda bu hataları fırlatabiliriz. Bunun içinde raise anahtar kelimesini kullanacağız. Hata fırlatma şu şekilde yapılabilmektedir;

Bu fonksiyondan fırlatılan hatayı da try,except bloklarıyla yakalayabiliriz.

İşte Pythonda hata yakalama konusu bu kadar ! Artık hata yakalamayı kullanarak programlarımızı daha güvenli yazabiliriz.

43 YORUMLAR

  1. … [Trackback]

    […] Here you will find 52948 additional Info on that Topic: yazilimbilimi.org/python-exceptions-istisnalar-ve-istisna-yakalama/ […]

  2. … [Trackback]

    […] Find More Information here to that Topic: yazilimbilimi.org/python-exceptions-istisnalar-ve-istisna-yakalama/ […]

BİR CEVAP BIRAK

Please enter your comment!
Please enter your name here