Bu yazıda assert kullanarak Python'da iddia hakkında bilgi edineceğiz.
İddia nedir?
İddialar, programınızda bir gerçeği güvenle iddia eden veya belirten ifadelerdir. Örneğin, bir bölme işlevi yazarken bölenin sıfır olmaması gerektiğinden eminsin, bölenin sıfıra eşit olmadığını iddia edersin.
İddialar, koşulların doğru olup olmadığını kontrol eden basitçe mantıksal ifadelerdir. Doğruysa, program hiçbir şey yapmaz ve sonraki kod satırına geçer. Ancak yanlışsa, program durur ve bir hata verir.
Ayrıca, herhangi bir hata oluşur oluşmaz programı durdurma durumuna getirdiği ve program hatasının hangi noktasında meydana geldiğini gösterdiği için bir hata ayıklama aracıdır.
Aşağıdaki akış şemasına bakarak netleşebiliriz:
Python assert İfadesi
Python, assert
programda onaylama koşulunu kullanmak için yerleşik bir ifadeye sahiptir. assert
ifadesinin her zaman doğru olması beklenen bir koşulu veya ifadesi vardır. Koşul yanlışsa assert programı durdurur ve bir AssertionError
.
Pyhton'da Assert kullanmak için sözdizimi:
iddia etmek
iddia
Python'da assert
ifadeyi yukarıda belirtildiği gibi iki şekilde kullanabiliriz .
assert
ifadesinin bir koşulu vardır ve koşul yerine getirilmezse program durur ve verilirAssertionError
.assert
deyimi ayrıca bir koşul ve isteğe bağlı bir hata mesajı içerebilir. Koşul yerine getirilmezse assert programı durdururAssertionError
ve hata mesajı ile birlikte verir .
Kullanıcı tarafından geçirilen değerlerin ortalamasını hesaplayacak bir fonksiyonumuz olduğu ve değerin boş bir liste olmaması gerektiği bir örnek alalım. assert
Parametreyi kontrol etmek için deyimi kullanacağız ve aktarılan listenin uzunluğu sıfırsa, program durur.
Örnek 1: Assert'i Hata Mesajı olmadan kullanma
def avg(marks): assert len(marks) != 0 return sum(marks)/len(marks) mark1 = () print("Average of mark1:",avg(mark1))
Yukarıdaki programı çalıştırdığımızda çıktı şöyle olacaktır:
Onaylama Hatası
İfadeye boş bir liste mark1 geçerken bir hata aldık assert
, koşul yanlış oldu ve assert programı durdurur ve verir AssertionError
.
Şimdi assert
koşulu karşılayacak başka bir listeye geçelim ve çıktımızın ne olacağını görelim.
Örnek 2: Assert'i hata mesajıyla kullanma
def avg(marks): assert len(marks) != 0,"List is empty." return sum(marks)/len(marks) mark2 = (55,88,78,90,79) print("Average of mark2:",avg(mark2)) mark1 = () print("Average of mark1:",avg(mark1))
Yukarıdaki programı çalıştırdığımızda çıktı şöyle olacaktır:
Ortalama mark2: 78.0 AssertionError: Liste boş.
İşleve boş olmayan bir liste işareti2 ve ayrıca boş bir liste işareti1 avg()
geçtik ve mark2 listesi için çıktı aldık ancak bundan sonra bir hata aldık AssertionError: List is empty
. assert
Koşul mark2 listesi ve çalışma devam etmek programı ile memnun etti. Bununla birlikte, mark1 koşulu karşılamıyor ve bir AssertionError
.
Hatırlanması Gereken Önemli Noktalar
- İddialar, kodda her zaman doğru olduğu varsayılan koşul veya mantıksal ifadelerdir.
assert
ifadesi bir ifade ve isteğe bağlı mesaj alır.assert
deyimi, türlerini, argüman değerlerini ve işlevin çıktısını kontrol etmek için kullanılır.assert
deyimi, bir hatanın oluştuğu noktada programı durdurduğu için hata ayıklama aracı olarak kullanılır.