Python'da exception handling (istisna işleme), hata durumlarını yakalamak ve uygun bir şekilde işlemek için kullanılan bir programlama tekniğidir. Python'da exception handling'i yapmak için `try`, `except`, `else`, ve `finally` bloklarını kullanabilirsiniz. İşte bir örnek:
try:
# Riskli bir kod bloğu
x = 10 / 0 # Sıfıra bölme hatası (ZeroDivisionError)
except ZeroDivisionError as e:
# Belirli bir hatayı ele alma
print("Sıfıra bölme hatası yakalandı:", e)
except Exception as e:
# Genel hata yakalama
print("Bir hata oluştu:", e)
else:
# Hata oluşmadan çalışacak kod
print("Herhangi bir hata oluşmadı.")
finally:
# Her durumda çalışacak kod
print("İşlem tamamlandı.")
Bu örnekte:
- try bloğu içinde "riskli" bir kod parçası bulunur. Eğer bu kod parçası bir hata üretirse, ilgili `except` bloğuna gidilir.
- except bloğu, belirli bir istisna (hata türü) ele almak için kullanılır. Örneğin, `ZeroDivisionError` hatası için bir `except` bloğu bulunuyor. Farklı türde hataları ele almak için birden fazla `except` bloğu ekleyebilirsiniz.
- else bloğu, hiçbir hata oluşmazsa çalışan kod parçasıdır.
- finally bloğu ise, her durumda çalışan kod parçasıdır ve hata olsa da olmasa da çalışır.
Bu şekilde, programınızı hata durumlarına karşı daha sağlam ve kullanıcı dostu hale getirebilirsiniz. Python, birçok farklı hata türüne ve istisna sınıfına sahiptir, ve bu sınıflar Python'ın standart kütüphanesinde belgelendirilmiştir. İhtiyacınıza göre farklı istisna türleri için özelleştirilmiş `except` blokları ekleyebilirsiniz.