Izjava o potvrđivanju Pythona

U ovom ćemo članku naučiti o tvrdnji u Pythonu pomoću assert.

Što je tvrdnja?

Tvrdnje su izjave koje tvrde ili pouzdano navode činjenicu u vašem programu. Na primjer, dok pišete funkciju dijeljenja, sigurni ste da djelitelj ne smije biti nula, tvrdite da djelitelj nije jednak nuli.

Tvrdnje su jednostavno logički izrazi koji provjeravaju vraćaju li se uvjeti istina ili ne. Ako je to točno, program ne poduzima ništa i prelazi na sljedeći redak koda. Međutim, ako je lažno, program se zaustavlja i baca pogrešku.

Također je alat za otklanjanje pogrešaka jer zaustavlja program čim se dogodi bilo kakva pogreška i pokazuje na kojoj je točki programske pogreške došlo.

Možemo biti jasni ako pogledamo dijagram toka u nastavku:

Izjava o tvrđenju Pythona

Python ima ugrađenu assertizjavu za upotrebu uvjeta tvrdnje u programu. assertiskaz ima uvjet ili izraz koji bi trebali uvijek biti istiniti. Ako je uvjet lažan, tvrditi zaustavlja program i daje znak AssertionError.

Sintaksa za korištenje Assert-a u Pyhtonu:

 tvrditi 
 tvrditi,

U Pythonu možemo koristiti assertizjavu na dva načina kako je gore spomenuto.

  1. assertIzjava ima uvjet i ako uvjet nije zadovoljen program će se zaustaviti i dati AssertionError.
  2. assertIzjava također može imati uvjet i neobaveznu poruku o pogrešci. Ako uvjet nije zadovoljen, tvrditi zaustavlja program i daje AssertionErrorzajedno s porukom o pogrešci.

Uzmimo primjer, gdje imamo funkciju koja izračunava prosjek vrijednosti koje je korisnik proslijedio, a vrijednost ne smije biti prazan popis. Pomoću assertnaredbe provjerit ćemo parametar, a ako je duljina prosljeđenog popisa jednaka nuli, program se zaustavlja.

Primjer 1: Korištenje assert-a bez poruke o pogrešci

 def avg(marks): assert len(marks) != 0 return sum(marks)/len(marks) mark1 = () print("Average of mark1:",avg(mark1))

Kada pokrenemo gornji program, izlaz će biti:

 AssertionError

Dobili smo pogrešku dok smo prosljeđivali prazan popis mark1 u assertizraz, uvjet je postao netačan i assert zaustavlja program i daje AssertionError.

Sad ćemo proći još jedan popis koji će zadovoljiti assertuvjet i vidjeti kakav će biti naš izlaz.

Primjer 2: Korištenje assert s porukom pogreške

 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))

Kada pokrenemo gornji program, izlaz će biti:

 Prosjek ocjene 2: 78,0 AssertionError: Popis je prazan.

Funkciji smo proslijedili neprazan popis mark2, a također i prazni popis mark1, avg()a dobili smo izlaz za popis mark2, ali nakon toga dobili smo pogrešku AssertionError: List is empty. Popis assertmark2 i program za nastavak izvođenja ispunili su uvjet. Međutim, mark1 ne zadovoljava uvjet i daje znak AssertionError.

Ključne točke koje treba zapamtiti

  • Tvrdnje su uvjet ili logički izraz koji bi uvijek trebali biti istiniti u kodu.
  • assert izraz uzima izraz i neobaveznu poruku.
  • assert naredba se koristi za provjeru vrsta, vrijednosti argumenata i rezultata funkcije.
  • assert naredba koristi se kao alat za otklanjanje pogrešaka jer zaustavlja program na mjestu gdje se dogodi pogreška.

Zanimljivi članci...