The sea does not like to be restrained.
Emektar Üye
- Katılım
- 15 Tem 2021
- Mesajlar
- 1,724
- Çözümler
- 86
- Tepki puanı
- 665
- Ödüller
- 10
- Yaş
- 25
- Sosyal
4 HİZMET YILI
Hata yakalama, programlamada sıkça karşılaşılan bir durumdur ve Python gibi birçok programlama dili, hata yakalama için özel bir mekanizma sağlar. Python'da hata yakalama, "try-except" blokları kullanılarak yapılır.
Bir "try-except" bloğu, potansiyel bir hata oluşabilecek kodu içeren "try" bloğu ve hatanın ele alınacağı "except" bloğundan oluşur. Eğer "try" bloğunda bir hata oluşursa, program "except" bloğuna atlayacak ve burada hatanın ne olduğu ve nasıl ele alınacağı belirtilen kodu çalıştıracaktır.
Örneğin, aşağıdaki örnek kodda, "try" bloğunda bir sayı girişi istenir ve kullanıcının girdiği değer bir sayı değilse, "except" bloğuna atlar ve "Lütfen bir sayı girin" şeklinde bir hata mesajı yazdırır:
"try-except" blokları, kodunuzu daha güvenli hale getirir ve hataları ele almanıza olanak tanır. Ancak, "try-except" bloklarının aşırı kullanımı, programın performansını olumsuz yönde etkileyebilir. Bu nedenle, hata yakalama mekanizmasını kullanırken dikkatli olmak önemlidir.
raise
Python'da "raise", programcıların kendi özel hata mesajlarını oluşturmasına olanak tanıyan bir anahtar kelimedir. "raise" anahtar kelimesi, bir hata durumu oluştuğunda, hata mesajını oluşturur ve programın çökmesine neden olur. "raise" anahtar kelimesi, hata türünü belirleyebilir ve hata mesajını da özelleştirebilirsiniz.
Örneğin, aşağıdaki örnek kodda, bir fonksiyonun argümanı 0 olduğunda bir hata durumu oluşacak ve "raise" kullanılarak bir hata mesajı oluşturulacaktır:
assert
Programlama sırasında, belirli koşulların sağlandığından emin olmak için kullanılır. assert ifadesi, bir koşulu değerlendirir ve koşul yanlışsa, bir AssertionError yükseltir.
assert ifadesi şu şekildedir:
Burada koşul, doğru veya yanlış olarak değerlendirilebilecek bir ifadedir. mesaj ise AssertionError yükseltildiğinde gösterilecek isteğe bağlı bir mesajdır.
Örneğin, bir fonksiyonun girdilerinin belirli bir koşulu sağlaması gerekiyorsa, assert kullanarak bunu kontrol edebilirsiniz:
Bu örnekte, assert ifadesi yalnızca y != 0 koşulunu kontrol eder ve bu koşul yanlış olduğunda, "Sıfıra bölme hatası" mesajını içeren bir AssertionError yükseltir.
Bir "try-except" bloğu, potansiyel bir hata oluşabilecek kodu içeren "try" bloğu ve hatanın ele alınacağı "except" bloğundan oluşur. Eğer "try" bloğunda bir hata oluşursa, program "except" bloğuna atlayacak ve burada hatanın ne olduğu ve nasıl ele alınacağı belirtilen kodu çalıştıracaktır.
Örneğin, aşağıdaki örnek kodda, "try" bloğunda bir sayı girişi istenir ve kullanıcının girdiği değer bir sayı değilse, "except" bloğuna atlar ve "Lütfen bir sayı girin" şeklinde bir hata mesajı yazdırır:
Python:
try:
sayi = int(input("Bir sayı girin: "))
except ValueError:
print("Lütfen bir sayı girin.")
"try-except" blokları, kodunuzu daha güvenli hale getirir ve hataları ele almanıza olanak tanır. Ancak, "try-except" bloklarının aşırı kullanımı, programın performansını olumsuz yönde etkileyebilir. Bu nedenle, hata yakalama mekanizmasını kullanırken dikkatli olmak önemlidir.
raise
Python'da "raise", programcıların kendi özel hata mesajlarını oluşturmasına olanak tanıyan bir anahtar kelimedir. "raise" anahtar kelimesi, bir hata durumu oluştuğunda, hata mesajını oluşturur ve programın çökmesine neden olur. "raise" anahtar kelimesi, hata türünü belirleyebilir ve hata mesajını da özelleştirebilirsiniz.
Örneğin, aşağıdaki örnek kodda, bir fonksiyonun argümanı 0 olduğunda bir hata durumu oluşacak ve "raise" kullanılarak bir hata mesajı oluşturulacaktır:
Python:
def bolme(a, b):
if b == 0:
raise ZeroDivisionError("Bölen 0 olamaz.")
else:
return a / b
print(bolme(4, 2))
print(bolme(4, 0))
assert
Programlama sırasında, belirli koşulların sağlandığından emin olmak için kullanılır. assert ifadesi, bir koşulu değerlendirir ve koşul yanlışsa, bir AssertionError yükseltir.
assert ifadesi şu şekildedir:
Python:
assert koşul, mesaj
Burada koşul, doğru veya yanlış olarak değerlendirilebilecek bir ifadedir. mesaj ise AssertionError yükseltildiğinde gösterilecek isteğe bağlı bir mesajdır.
Örneğin, bir fonksiyonun girdilerinin belirli bir koşulu sağlaması gerekiyorsa, assert kullanarak bunu kontrol edebilirsiniz:
Python:
def bolme(x, y):
assert y != 0, "Sıfıra bölme hatası"
return x / y
bolme(4, 2) # 2.0
bolme(4, 0) # AssertionError: Sıfıra bölme hatası
Bu örnekte, assert ifadesi yalnızca y != 0 koşulunu kontrol eder ve bu koşul yanlış olduğunda, "Sıfıra bölme hatası" mesajını içeren bir AssertionError yükseltir.