Python

Python Try Except Finally – Hata Yakalama

Python programlama dilinde TryExcept; yazmış olduğumuz kod bloklarında hataların önüne geçen bir yapıdır.

Aslında hataların tam olarak önüne geçmekten kasıt hatanın önlenmesi değil, ilgili programın son kullanıcıya hata vererek sonlanmasının önüne geçmeyi sağlayan bir yapıdır.

Örneğin kullanıcının sayı girmesi gereken bir bölüme sayı harici karakterler girmesi, sıfıra bölme hatası vb. hatalar oluşturduğumuz programın hata vererek sonlanmasına yol açacaktır.

Şimdi Try- Except- Finally bloklarını inceleyerek bununla ilgili örneklerimizi inceleyeceğiz.

 

Try bloğu, hatalar için bir kod bloğunu test etmenizi sağlar.

Except bloğu, hatayı işlemenizi sağlar.

Finally bloğu, try ve except blokların sonucuna bakılmaksızın kodu çalıştırmanıza izin verir.

İstisna işleme

Bir hata meydana geldiğinde veya bizim dediğimiz gibi bir istisna meydana geldiğinde, Python normalde durur ve bir hata mesajı oluşturur.

Bu istisnalar try ifadesi kullanılarak ele alınabilir:

Örnek:

Try bloğu, x tanımlı olmadığından bir istisna oluşturacaktır:

Çıktı:

 

Try bloğu bir hata ortaya çıkardığından, except bloğu çalıştırılacaktır.

Try bloğu olmadan, program çökecek ve bir hata verecektir.

 

Birden Fazla İstisna

İstediğiniz kadar istisna bloğu tanımlayabilirsiniz, örn. özel bir tür hata için özel bir kod bloğu yürütmek istiyorsanız;

Örnek:

 

Else

Herhangi bir hata oluşmadıysa yürütülecek bir kod bloğu tanımlamak için else anahtar sözcüğünü kullanabilirsiniz:

Örnek:

Bu örnekte, try bloğu herhangi bir hata oluşturmaz:

 

Finally

Finally bloğu, try bloğunun bir hata oluşturup oluşturmadığına bakmaksızın çalıştırılacaktır.

Örnek:

Çıktı:

Finally bloğu, nesneleri kapatmak ve kaynakları temizlemek için yararlı olabilir.

Örnek:

Yukarıdaki örnekte Dosya açık bırakılmadan program devam edecektir.

Bir istisna oluşturun (Raise)

Bir Python geliştiricisi olarak, bir koşul oluşursa bir istisna atmayı seçebilirsiniz.

Bir istisna atmak için, raise anahtar sözcüğünü kullanın.

Örnek: Aşağıdaki örnekte x değişkeni 0′ dan küçükse bir istisna oluşturalım.

Çıktı:

raise anahtar sözcüğü, bir istisna oluşturmak için kullanılır.

Ne tür bir hatanın ortaya çıkacağını ve kullanıcıya yazdırılacak metni tanımlayabilirsiniz.

Örnek: Aşağıdaki örnek kullanıcının integer değer harici bir değer girdiğinde uyarı verecek istisnayı oluşturmaktadır.

Çıktı:

About the author

admin

Add Comment

Click here to post a comment

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.