Python Hata Yakalama ve İstisnalar

Merhaba arkadaşlar, bu yazımızda Python derslerinin bu serisinde on üçüncü ders olarak Python Hata Yakalama ve İstisnalar konusuna değinmeye çalışacağım. Umarım sizler için faydalı bir yazı olur. İsterseniz hemen başlayalım.

Python Hata Yakalama ve İstisnalar

Python Hata Türleri

Python’da, programlama hataları genellikle iki türde toplanır: söntaks hataları ve çalışma zamanı hataları.

  1. Söntaks hataları: Bu, kodun doğru bir şekilde yazılmamasından kaynaklanır. Örneğin, unutulan noktalı virgül, yanlış indentasyon gibi. Bu tür hatalar kodun derlenmediğinde veya çalıştırılmadan önce tespit edilir.
  2. Çalışma zamanı hataları: Bu, kodun doğru sözdizimiye sahip olduğu halde, çalışma zamanında oluşan hatalardır. Örneğin, dosya açma hatası, bellek hatası, sıfıra bölme hatası gibi. Bu tür hatalar kodun derlenip çalıştırıldığında tespit edilir.

Python’da, çalışma zamanı hataları için bazı yaygın hata türleri şunlardır:

  1. NameError: Tanımlanmamış bir değişken kullanılmaya çalışılırken oluşan hata.
  2. TypeError: Farklı türler arasında geçersiz bir işlem yapılmaya çalışılırken oluşan hata.
  3. IndexError: Dizi sınırlarının dışına çıkılmaya çalışılırken oluşan hata.
  4. KeyError: Dizi veya sözlük gibi veri yapılarında belirli bir anahtarın bulunmadığı durumda oluşan hata.
  5. ValueError: Geçersiz bir değer girilmeye çalışılırken oluşan hata.
  6. ZeroDivisionError: Sıfıra bölme hatası oluşur.

Bu sadece yaygın olarak karşılaşılan hata türleridir, Python’da daha fazla hata türü mevcuttur. Bunların çözümü için hata mesajlarının dikkatli bir şekilde incelenmesi ve kodun yeniden incelenmesi gerekir.

İstisnalar (Exception)

Python’da, çalışma zamanı hataları için istisnalar (exception) kullanılır. İstisnalar, kodun çalışma zamanında oluşabilecek olası hata durumlarını işaret eder ve programın normal çalışmasını engellemek yerine, hata durumlarını yönetmek için kullanılır. Python’da, birçok built-in istisna sınıfı mevcuttur. Örneğin, NameError, TypeError, IndexError, KeyError, ValueError, ZeroDivisionError gibi

Aşağıdaki kod parçası, bir istisna oluşması durumunda nasıl ele alınabileceğini gösterir:

try:
    # kod parçası
except NameError:
    # istisna oluştuğunda çalıştırılacak kod
except TypeError:
    # istisna oluştuğunda çalıştırılacak kod
except IndexError:
    # istisna oluştuğunda çalıştırılacak kod

try bloğu içindeki kod parçası çalıştırılır ve eğer bir istisna oluşursa, oluşan istisnaya karşılık gelen except bloğu çalıştırılır. Eğer bir istisna oluşmazsa, try bloğu içindeki kod parçası normal şekilde çalışır ve except bloğu çalıştırılmaz.

try-except bloğunun yanı sıra, finally bloğu da kullanılabilir. finally bloğu, herhangi bir istisna oluşmasına bakılmaksızın, mutlaka çalıştırılması gereken kodları içerebilir.

try:
    # kod parçası
except NameError:
    # istisna oluştuğunda çalıştırılacak kod
except TypeError:
    # istisna oluştuğunda çalıştırılacak kod
except IndexError:
    # istisna oluştuğunda çalıştırılacak kod
finally:
    # herhangi bir istisna oluşsa dahi mutlaka çalıştırılacak kod

Bu şekilde, programın çalışma zamanında oluşabilecek hataları yönetmeniz ve kontrol altında tutmanız mümkün olur. Bu sayede, programın çalışmasını engellenmeden hata durumlarını işleyebilir ve kullanıcıya daha iyi bir hizmet sunabilirsiniz. Ayrıca, istisnaların kullanımı sayesinde kodunuzun daha okunaklı ve anlaşılır olmasını sağlayabilirsiniz.


Arkadaşlar bu Python Hata Yakalama ve İstisnalar adlı yazımızın da sonuna gelmiş bulunmaktayız. Umarım faydalı olmuştur.

0 0 votes
Article Rating
Subscribe
Bildir
guest

0 Yorum
En Yeniler
Eskiler Beğenilenler
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x